选择“Control”表示建立控件型关联变量,选择“Value”表示建立数值型关联变量。使用MFC应用程序向导,创建一个工程名为“cal”的对话框程序,用于演示数值型关联变量。图6-15 建立数值型关联变量图6-16 添加多个数值型关联变量7)双击“计算”按钮,建立消息映射函数并修改代码。图6-17 查看运行结果本示例演示了通过类向导对编辑框和下拉列表控件建立数值型关联变量,并且结合调用UpdateData函数对数值型关联变量输入/输出。......
2023-11-25
在CWnd类中包含一系列将窗口与变量关联的函数,如下。
1)CWnd::Attach。将一个窗口句柄嫁接到一个CWnd类型变量中。
2)CWnd::Detach。移除嫁接到CWnd变量中的句柄。
3)CWnd::SubclassWindow。子类化一个窗口句柄到CWnd派生类变量中(不但要把句柄关联进入CWnd对象中,而且还要将窗口的消息映射到CWnd的子类中)。
4)CWnd::UnsubclassWindow。解除子类化。
5)CWnd::SubclassDlgItem。根据窗口ID子类化对应的窗口。
使用MFC应用程序向导,创建一个工程名为“vs”的对话框程序,演示通过函数建立关联变量。
1)修改主对话框的外观和字体并添加一些控件,如图6-11所示。
图6-11 编辑主对话框资源
2)修改主对话框的控件属性,见表6-3。
表6-3 主对话框的控件属性
(www.chuimin.cn)
3)在对话框类的头文件中,加入4个控件类型的变量。
4)修改对话框初始化函数,通过调用函数建立控件窗口和变量的关联。
5)添加WM_DESTROY消息映射函数并修改代码。
6)为增、删、改3个按钮建立消息映射函数并修改代码。
7)编译并运行,测试代码。
实际上类向导建立的关联变量,内部也是调用子类化函数实现的,但是使用向导建立关联变量更加方便一些。因此,在后续章节中,主要使用类向导建立关联变量。
有关VC++就业培训宝典之MFC视频教程的文章
选择“Control”表示建立控件型关联变量,选择“Value”表示建立数值型关联变量。使用MFC应用程序向导,创建一个工程名为“cal”的对话框程序,用于演示数值型关联变量。图6-15 建立数值型关联变量图6-16 添加多个数值型关联变量7)双击“计算”按钮,建立消息映射函数并修改代码。图6-17 查看运行结果本示例演示了通过类向导对编辑框和下拉列表控件建立数值型关联变量,并且结合调用UpdateData函数对数值型关联变量输入/输出。......
2023-11-25
创建一个工程名为“vd”的对话框程序,演示常用控件的数值型关联变量。图6-20 添加数值型和控件型关联变量4)类向导在主对话框的头文件中自动添加的代码如下。几乎所有数值型关联变量能实现的功能,都能够由控件型关联变量或者GetDlgItem系列函数替代实现。对于单选按钮和复选框,使用数值型关联变量会更方便些。⑤通过类向导建立关联变量时,只要对“组长”ID建立一个数值型关联变量即可。......
2023-11-25
标签控件,又称选项卡控件。很多软件的用户资料注册部分是采用注册向导模式,而用户资料修改则采用标签控件管理模式。打开本章第3节建立的“usd”工程,本节继续演示采用标签控件来管理多个分页。1)新插入一个对话框资源,作为使用标签控件进行分页管理的父窗口,如图9-20所示。6)添加标签控件的TCN_SELCHANGE消息反射函数OnSelchangeTab,如图9-22所示。图9-24 查看运行结果单击“修改”按钮或者双击列表选项,就会打开带标签控件的修改资料的对话框。......
2023-11-25
通过MFC应用程序向导,创建一个工程名为“vc”的对话框程序用于演示控件型关联变量。图6-4 通过菜单命令打开类向导4)在Member Variables分页中,选中IDC_LIST列表项再单击“Add Variables”按钮,或者直接双击IDC_LIST弹出添加关联变量的对话框,如图6-5所示。图6-6 类向导创建关联变量生成的代码DoDataExchange函数就是专门处理成员变量与控件关联的函数,可以认为是成员变量与控件之间的桥梁。6)按照以上方法,通过类向导为组合控件IDC_DEPT也建立一个控件型关联变量,如图6-7所示。......
2023-11-25
在本章第5节中,通过“Win32 Application”建立的MFC32工程,目的是为了演示MFC工程的架构原理。一个MFC工程必须包含一个CWinApp的派生类,并定义一个派生类的全局变量theApp,最后重写InitInstance虚函数用于处理进程启动过程。本节直接通过“MFC AppWizard”来创建MFC工程,用于对照以上说明的MFC必备因素。图3-54 程序向导生成的代码图3-55 MFC类向导在Class name下拉列表中选择CTestMFCDlg类,在Member functions列表框中显示4个已添加的回调函数。......
2023-11-25
自绘按钮是最容易开发的自绘控件,其他支持自绘的界面对象还有组合控件、列表控件以及自绘菜单等。开发这些自绘界面的难度要大一些,例如,组合控件要自绘下拉列表中的每一项,列表控件还要对不同的行和列进行处理等。打开本章第5节的“Si”工程,本节将继续开发一个带图标和文字的组合控件。1)修改国籍组合控件的属性,选择Owner draw中的Variable选项,如图10-33所示。......
2023-11-25
自定义窗口不但可以用于作为主窗口开发框架软件或者全屏软件,也常用于作为子窗口开发自定义控件。创建一个工程名为“bt”的对话框程序,演示通过创建自定义子窗口来开发一个按钮的过程。图11-13 创建通用窗口派生类2)在建立好的自定义按钮类头文件中,添加一些成员变量和函数。5)在类视图中添加一些窗口显示和与鼠标操作相关的消息映射函数,如图11-14所示。9)在源文件中,简单编写两个按钮的消息反射函数。......
2023-11-25
从自定义的空白窗口开始开发出一个控件,无疑是比较辛苦的工作。其实前面章节中的自绘控件,就是一种特殊控件二次开发的方法,但有很多控件没有自绘属性。不支持自绘的控件进行二次开发,主要是编写代码改造控件的绘图和操作的消息映射函数,如OnPaint和OnMouseMove等。3)在类视图中添加一些窗口显示与鼠标操作相关的消息映射函数,如图11-19所示。显然基于标准控件的二次开发,比从空白窗口开始重新开发控件的过程简单很多。......
2023-11-25
相关推荐