MFC之对话框
来源:互联网 发布:北京梨园淘宝城 编辑:程序博客网 时间:2024/04/19 14:03
CDialog
1*对话框类在实例化的时候,当对话框类中的控件初始化完毕的时候,对话框会收到:
WM_INITDIALOG消息,这时它的处理程序调用了一个虚函数---OnInitDialog(...)
对话框类中有两个按钮控件IDOK/IDCANCEL,并且MFC已经为它写好了处理程序,在处理程序中调用了虚函数--
OnOK()/OnCancel().
上面的三个虚函数,我们经常需要重写。
注意在OnInitDialog(...)中调用了UpdateData(fasle)--->调用了虚函数
DoDataExchange(CDataExchange *pcde){....DDX?DDV?DDC...}--》实现了对话框控件和对话框数据成员的绑定。----------是一个亮点啊!这是MFC给予我们的一个帮助。。。。(在这里是成员数据到控件的流动)
2*默认情况下,MFC在OnOk中实现了调用updatedata(true)--》DoDataExchange(CDataExchange *pcde){....DDX?DDV?DDC...}--》进而实现控件数据到成员数据的流动。然后调用了EndDialog().结束对话框。
默认情况下,OnCancel().调用了EndDialog().结束对话框。
3*模式对话框,需要CDialog::DoModal()==IDOK/IDCANCEL判断处理。一般不需重写OnOK()/OnCancel().
4*在非模式对话框中,一般必须重写OnOK()/OnCancel(),点击IDOK(一般改名为apply)对话框不会关闭,在 OnOK中要把数据的改变以消息的形式发送出去。---AFxGetMainWnd->SendMessage(WM_APPLY,0,(LParam)&St).
非模式对话框一般作为窗口或视图的成员,以Create的方法创建,在堆上创建。需要重写PostNcDestroy()。
在非模式对话框中,OnCancel(){DestroyWindow();}
在非模式对话框创建时,对它的存在性进行判断是很有必要的。
- MFC之对话框
- MFC之对话框
- MFC之对话框
- MFC 之 对话框编程
- MFC之文件对话框
- MFC控件篇之对话框
- MFC 之 对话框编程入门
- MFC之对话框(二)
- MFC通用对话框之GetOpenFileName
- MFC通用对话框之GetSaveFileName
- MFC对话框之键盘响应
- MFC编程之文件对话框
- MFC学习笔记之-对话框
- MFC学习笔记之对话框
- MFC学习之模式对话框设计
- MFC控件篇之属性对话框
- MFC控件篇之通用对话框
- MFC控件篇之对话框的应用
- SDQ 与 DLinq 相似的地方让我惊讶
- 华为路由器单臂路由实例应用
- Spring项目开发笔记系列(四)
- Virtual method and base-type pointer make polymorphism in C++
- SqlServer (一)
- MFC之对话框
- 自已写的一段清除Vking病毒文件感染的代码
- jsp的内部方法使用
- 买捷达车的都是些什么人?
- 一个通过某个部件获得父窗体的例子
- 个人简历
- 基于SMIL的多媒体课件制作工具的研究
- 利用配置文件实现SQL-Server与Oralce数据库访问类的转换
- SQL查询中的连接