Windows编程技术

Windows编程技术

ID:41104209

大小:423.51 KB

页数:19页

时间:2019-08-16

Windows编程技术_第1页
Windows编程技术_第2页
Windows编程技术_第3页
Windows编程技术_第4页
Windows编程技术_第5页
资源描述:

《Windows编程技术》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Windows编程技术对话框1概述对话框是一个窗口,它不但可以接收消息,而且还可以在其客户区中进行绘图操作。但对话框又不同于一般的窗口,它包含有一些特殊的子窗口,这些子窗口被称为对话框的控件。对话框的主要功能要通过这些控件来实现。在MFC程序中,一个对话框由两部分组成:对话框模板资源与对话框类。对话框模板资源,实际上相当于一个窗口布局设计图。该模板定义了对话框的外观,对话框内有哪些控件以及它们的位置、尺寸及风格等。由于该模板以资源的形式包含在程序中,所以被称为对话框模板资源。对话框模板资源可以在VC开发环境提供的“对话框编辑器”中设计完

2、成。在MFC中,所有对话框类的的基类是CDialog类,CDialog类也是CWnd类的派生类。它用来封装对话框的各种功能,完成对话框的各种操作,CDialog可以依据一个对话框模板资源建立一个实际的对话框。2对话框模板资源创建对话框模板资源打开“资源视图”窗口,选择菜单“插入Dialog”即可编辑对话框模板属性外观外观属性可用来设定对话框的显示效果,其中常用的有对话框标题等,通过修改属性窗口外观栏中“Caption”对应的字符串可以修改对话框标题。位置位置属性可用来设定对话框初始显示的位置。行为行为属性可用来设定对话框运行时的行为。杂

3、项杂项属性可用来设定对话框中一些不好分类的属性字体字体属性决定在对话框中使用的字体类型及尺寸3对话框模板资源在对话框模板中添加或删除控件工具箱添加控件首先在工具箱内用鼠标左键单击的方法选择好欲添加的控件,将鼠标指针移动到对话框面板上,可以发现鼠标光标已经被改变成与控件图标相同的样子,用鼠标左键在对话框面板上单击,刚才选择的控件被添加到对话框面板上。删除控件用鼠标左键单击的方法在对话框面板上选择好欲删除的控件,控件被8个色块包围,说明该控件处于选取状态,直接按键盘〈Del〉键可删除选取的控件。4对话框模板资源在对话框模板上调整控件移动控件

4、用鼠标左键可以在对话框面板上拖动控件进行移动,也可以在选择好控件,用键盘方向键移动控件。修改控件尺寸选择好控件,控件被8个色块包围,用鼠标左键可以拖动色块来修改控件的尺寸。精确调整控件使用开发环境主菜单“视图→工具栏→对话框编辑器”可以打开“对话框编辑器”工具栏,使用该工具栏中的工具可以精确调整控件的大小和位置。5对话框模板资源修改控件的属性由于每个控件也都是一个窗口,所以可以通过控件的属性窗口来调整控件的属性。每个控件一般都有“外观”、“行为”、“杂项”三个属性,其意义和功能与对话框模板的相应属性相仿。其中比较重要的是“杂项”中的ID

5、,它是该控件的唯一标识,对话框要使用该标识与控件进行通信。在插入新的控件时,资源编辑器要确认这个控件有一个唯一的标识。因为系统自动生成的ID只能反映控件类型和数字编号,所以在插入控件后,通常需要将自动生成的ID更改为一个具有更明确含义的ID。6对话框模板资源设定控件跳格次序对话框中的控件可以按照一定顺序跳格。在对话框运行过程中,可以设定哪一个控件是被默认选择的以及使用键盘上的Tab键从一个控件跳格至另一个控件的顺序关系。当跳至某个控件时,此控件就会接收当前的输入焦点。在开发环境主菜单中选择“格式→Tab键跳格顺序”命令,对话框模板此时会

6、显示出每一个控件的缺省跳格顺序,在希望成为第一个按钮的控件单击鼠标,它的边上就会出现数字1。按希望的顺序逐一单击各个控件,每个控件顺次出现一个数字,直到全部设置完成。7对话框类模式对话框当一个模式对话框运行时,系统禁止了对该对话框父窗口的通信。建立对话框对象CDialog::CDialog(UINTnIDTemplate,CWnd*pParentWnd=NULL)CDialogdlg(IDD_ABOUTBOX);使用对话框virtualintCDialog::DoModal()dlg.DoModal()结束对话框DoModal()返回后

7、,对话框就已经结束了。8对话框类模式对话框代码示例CDialogdlg(IDD_ABOUTBOX);CStringstr;intnResult=dlg.DoModal();switch(nResult){caseIDOK:str="OK";break;caseIDCANCEL:str="CANCEL";break;default:str="其它值";break;}AfxMessageBox(str);9对话框类非模式对话框建立对话框对象CDialog::CDialog()CDialogdlg;使用对话框BOOLCDialog::Crea

8、te(UINTnIDTemplate,CWnd*pParentWnd=NULL)dlg.Create(IDD_ABOUTBOX);结束对话框非模式对话框对象被销毁时,对话框可以被结束CDialog::Des

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

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

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