vc++7.ppt


文档分类: | 页数:约17页 举报非法文档有奖
1/17
下载提示
  • 1.该资料是网友上传的,本站提供全文预览,预览什么样,下载就什么样。
  • 2.下载该文档所得收入归上传者、原创者。
  • 3.下载的文档,不会出现我们的网址水印。
1/17
文档列表 文档介绍
2018/4/22
Visual C++程序设计
东北大学
陈东明
2018/4/22
第7章对话框和控件
对话框是实现人机交互的重要组成部分,它的使用非常普遍。
必须熟练掌握对话框的创建和使用方法。
2
2018/4/22
1、消息对话框
int MessageBox(HWND,LPCTSTR,LPCTSTR,UINT);
参数1:父窗口句柄
参数2:信息字符串
参数3:对话框标题
参数4:对话框风格(可组合)。
消息对话框是最简单的一种对话框,它不需要创建对话框资源。在只需要提示信息而没有其它复杂的处理时使用消息对话框非常方便。
3
2018/4/22
2、一般对话框的创建和使用流程
创建对话框资源
创建与对话框资源相关联的对话框类的派生类
创建有关控件的消息响应
创建与控件相关联的变量
在程序中创建对话框派生类对象
调用DoModal( )或Create( )显示对话框
一般注意:对话框风格的统一:命名,标识号定义,背景色,文本颜色,控件风格,语言统一,按钮设置。
3、创建对话框资源:
创建新对话框,添加控件
打开已有的对话框,修改
用Test按扭进行测试
4
2018/4/22
4、创建对话框类
CDialog, CPropertyPage, CFileDialog等类与资源关联。
这里,MFC ClassWizard十分重要:
Message Maps: 消息映射
Member Variables: 成员变量
技巧:如果ClassView中类信息丢失,,重新打开工程,进入ClassWizard出现对话框,选Add All,此时又生成了类信息。
Cdialog有四个基本函数:
1)OnInitDialog( )
是虚函数,用于响应WM_INITDIALOG消息,在对话框显示之前调用,它经常被重载以完成初始化操作。
2)DoModal( ) 激活模式对话框
5
2018/4/22
3)OnOK( )
是虚函数,用户单击ID为IDOK的按钮时调用,进行数据交换和验证,更新变量。
若是无模式对话框,则在其中调用DestroyWindow( )来删除对话框。
千万不要调用基类中的该函数,因为基类中该函数调用EndDialog( )函数,它将使对话框不可见但并不废除它。
4)OnCancel( )
单击Cancel按钮或按ESC键时调用。
模式:调用时自动终止,DoModal( )返回IDCANCEL;
无模式:必须重载,调用DestroyWindow( )删除对话框(必
要用基类的该函数)。
6
2018/4/22
DoModal( )被调用时,“幕后”有一系列函数调用,顺序如下:
DoModal( )→自定义对话框初始化→Cdialog初始化→CWnd::UpdateData(FALSE) →自定义对话框::DoDataExchange →用户输入数据→单击OK后→自定义对话框OnOK →Cdialog::OnOK →CWnd::UpdateData(TRUE) →自定义对话框::DoDataExchange →Cdialog::EndDialog(IDOK)
CWnd::UpdateData(FALSE)
变量中数据传给相应控件
CWnd::UpdateData(TRUE)
控件中数据传给相应变量
7
2018/4/22
5、数据交换和验证(DDX和DDV)
1)DDX(Dialog data exchange)
实现对话框中控件数值的初始化和获取用户的数据输入,加载数据和对话框关闭时恢复数据自动化。
2) DDV(Dialog data validation)
对对话框中控件数据进行校验,长度范围有效化,。它们均在DoDataExchange()函数中,ClassWizard自动生成,可不必深究。
6、模式对话框
弹出后,独占了系统资源,只有在关闭后才可以继续执行,在此之前不能执行应用程序其它代码。模式对话框一般要求用户作出某种选择。如:
CMyDialog dlg; ();
8
2018/4/22
7、非(无)模式对话框
弹出后,不关闭的情况下程序可继续执行其它部分而不要用户作出响应。一般用来显示信息或者实时地进行一些设置。它调用Create()函数,而不是用DoModal()。
举例:
类名:CDialogModalless
文件名:
增加CDialogModalless类指针。
在view类中添加变量: CDialogModalless* m_pModallessDlg;
2)在vie

vc++7 来自淘豆网www.taodocs.com转载请标明出处.

相关文档 更多>>
非法内容举报中心
文档信息
  • 页数17
  • 收藏数0 收藏
  • 顶次数0
  • 上传人ranfand
  • 文件大小205 KB
  • 时间2018-04-21