MFC数据类型&消息映射

MFC数据类型&消息映射

ID:37848451

大小:55.00 KB

页数:9页

时间:2019-06-01

MFC数据类型&消息映射_第1页
MFC数据类型&消息映射_第2页
MFC数据类型&消息映射_第3页
MFC数据类型&消息映射_第4页
MFC数据类型&消息映射_第5页
资源描述:

《MFC数据类型&消息映射》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、MFC数据类型下面这些是和Win32程序共同使用的数据类型BOOL:布尔值,取值为TRUEorFALSEBSTR:32-bit字符指针BYTE:8-bit整数,未带正负号COLORREF:32-bit数值,代表一个颜色值DWORD:32-bit整数,未带正负号LONG:32-bit整数,带正负号LPARAM:32-bit整数,作为窗口函数或callback函数的一个参数LPCSTR:32-bit指针,指向一个常数字符串LPSTR:32-bit指针,指向一个字符串LPCTSTR:32-bit指针,指向一个常数字符串,此字符串可以移植到Unicode和DBCSLPTSTR:

2、32-bit指针,指向一个字符串,此字符串可以移植到Unicode和DBCSLPVOID:32-bit指针,指向一个未指定类型的数据LPRESULT:32-bit数值,作为窗口函数或callback函数的返回值UINT:在Win16中是一个16-bit未带正负号整数,在Win32中是一个32-bit未带正负号整数,WNDPROC:32-bit指针,指向一个窗口函数WORD:16-bit整数,未带正负号WPARAM:窗口函数或callback函数的一个参数,在Win16中是16-bit,在Win32中是32-bit下面这些是MFC独特的数据类型POSITION:一个数值,

3、代表collection对象(例如数组或链表)中的元素位置,常用于MFCcollectionclasses(即数据处理类,如CArray)LPCRECT:32-bit指针,指向一个不变的RECT结构用Spy++(VC++所附的一个工具)观察窗口类的名称时,会发现窗口类名称变成像Afx:b:14ae:6:3e8f这副奇怪的模样?原来是ApplicationFramework把窗口类的名称转换为Afx::x:y:z:w的类型,成为独一无二的窗口类型名称:x:窗口风格的hex值y:窗口鼠标光标的hex值z:窗口后台颜色的hex值w:窗口图标的hex值7.Serializabl

4、e的必要条件让一个对象有Serializable能力,它必须派生自一个Serializable类,一个类要成为Serializable,必须有下列五大条件:(1)从Cobject派生下来,如此一来,可保有RTTI、动态生成等机能(2)类的声明部分必须有DECLARE_SERIAL宏,此宏需要一个参数:类名称(3)类的实作部分必须有IMPLEMENT_SERIAL宏,此宏需要三个参数:一是类名称,二是基类名称,三是schemano.(4)改写Serialize虚拟函数,使它能够适当地把类的成员变量写入档案中(5)为此类加上一个default构造函数(也就是无参数之构造函数

5、),这个条件常为人所忽略,但它是必要的,因为若一个对象来自档案,MFC必须先动态生成它,而且在没有任何参数的情况下调用其构造函数,然后才从档案中读出对象数据。所有windows应用程序都是消息驱动的,消息处理是所有windows应用程序的核心部分。当用户单击鼠标或改变窗口大小时,都将给适当的窗口发送消息。每个消息都对应于某个特定的事件。一、消息处理和消息映射的概念1、消息 消息主要指由用户操作而向应用程序发出的信息,也包括操作系统内部产生的消息。例如,单击鼠标左按钮,windows将产WM_LBUTTONDOWN消息,而释放鼠标左按钮将产生WM_LBUTTONUP消息,

6、按下键盘上的字母键,将产生WM_CHAR消息。2、windows消息组成结构 windows消息由消息号和参数组成: 消息号 windows操作系统通过32整数标识一条windows消息,称为消息号。windows消息号具有三个特点: (1)唯一性 唯一性指对于windows操作系统中的每一条消息都有一个且只有一个消息号与它相对应。由于windows操作系统通过消息激活相应的过程,因此消息的标识必须是唯一的。 (2)直观性 消息号在形式上表现为消息名,消息名往住直观地说明了消息的产生方式和类型,例如消息名WM_LBUTTONDOWN直观地表示了单击产生的消息。 (3)可

7、自定义性 windows系统定义了一些消息号和消息名,程序员可以运用这些消息,也可以使用自已定义的窗口的消息。形式如下: #define消息名消息号 注意,为了不与现有的windows系统消息相冲突,在消息号的定义中通常采用如下: WM_USER+n  WM_USER是windows操作系统定义的用户消息起始值,程序员必须从该起始值后选取消息号,例如自定义消息名为“MESSAGE_1”和“MESSAGE_2”,可采用如下形式: #defineMESSAGE_1WM_USER+1 #DEFINEMESSAGE_2WM_USER+2 参数 w

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。