当前位置:首页 » 软件开发
开发技术指南» 文章正文
    引言: MapObject控件的使用之图层操作ix = o ns =
 

 

 ·vc实现屏幕变暗效果    »显示摘要«
    摘要: 网络上有很多利用vb编程实现屏幕变暗的效果(像关闭win95时的效果),我用vc改写了一下,权利属于原文作者! 正文 hdc hdc; //屏幕的宽度个高度 int scrwidth,scrheight; if(m_bool) { byte bybits[] = {0x55, 0x0, 0xaa, 0x0, 0x55, 0x0, 0xaa, 0x0, 0x55, 0x0, 0xaa, 0......
    摘要: 目前nt下有很多种隐藏文件和目录的方法,其中最简单的一种是给文件和文件夹加上系统属性和隐藏属性,操作系统就会不在显示了,而且查找也找不到了,但是这种方法一点都不彻底,没有可用性!下面我们来介绍用nt驱动程序来拦截ntapi来实现彻底隐藏文件和目录的目的。nt下有一个文件ntdll.dll,大部分ntapi都是在这个库中封装的。其中实现查找文件和目录的api接口是zwquerydirectory......


MapObject控件的使用之图层操作
mapobject控件的使用之图层操作

zswzwy@163.com 【程序编程相关:小议static

作者: 北京 张松伟 【推荐阅读:JIURL玩玩Win2k内存篇 Look

上一次我们已经加好了图层,但是不能对图层进行任何操作,比如移动.放大.缩小.全屏等.接下来我将介绍如何在mapobject中加入这些功能,准备好了吗?让我们开始吧. 【扩展信息:JIURL玩玩Win2k进程线程篇 EP

 

 

首先你要在工具栏上加入四个按扭,id为别为id_pan.id_zoomout.id_zoomin.id_fullscreen.加按扭的方法不用我说了吧.分别给它们加入command各update_command_ui消息.

 

然后在视图类中加入成员变量 uint m_motool;用来标识鼠标当前的任务.

 

好了,最关键的时候到了,我们要给mo加入消息映射.大家都知道,在对话框中加入控件的消息映射是非常简单的,然mo控件是我们自己创建的,要怎么加入呢?用普通的消息映射可以吗?让我来揭来这个迷底.给mo加入消息映射共分三步:

1.   在视图类的cpp文件中消息映射的下面加入如下代码:

begin_eventsink_map(cweathergisview, cview)

    //{{afx_eventsink_map(cweathergisview)

on_event(cweathergisview, id_gismap, -605 /* mousedown */, onmousedownmap1, vts_i2 vts_i2 vts_i4 vts_i4)

//}}afx_eventsink_map

end_eventsink_map()

 

2.   在视图类的.h文件中加入

afx_msg void onmousedownmap1(short button, short shift, long x, long y);

         注意要同时加入declare_eventsink_map()语句.

 

3.   好了,映射加好了,函数也声明了,下面就要实现了.在视图类中加入:

void cmyview::onmousedownmap1(short button, short shift, long x, long y)

成功了,下面我们要做的就是对图层的操作了.让我们从放大开始.

在onmousedownmap1函数中我们要判断当前鼠标的任务是什么,好做出相应的操作.如果用个switch语句,那简直太方便了:

         switch(m_motool)

         {

         case id_pan:


...   下一页
 ·也用 c++ 实现 property 功能    »显示摘要«
    摘要: 用 c# 或者 borland c++ builder 的时候会遇见“property”这个东西,可以控制读写方式。标准 c++ 并没有这个概念,那么我们能否在纯 c++ 中使用这个功能呢?当然可以。下面是本人独立完成的一个实现方法: #include <iostream>using namespace std; typedef enum {readonly, readwrite......
» 本期热门文章:

©2000-2007 All Rights Reserved. 最佳浏览:1024X768 MSIE