1.对话框创建
- 模态对话框
- 经常使用临时对象
- 等待另一个窗口完成之后,才能做自己的事情
- 属于主窗口的子窗口
- 非模态对话框
- 在Init中new这个对话框,在Close时delete
- 和主窗口同级的窗口
2.调用CreatrWindow后,发送WM_CREATE消息,之后,OnInitDiadlg()被调用。
3.窗口类里面维护了窗口内核对象,只有当该窗口对象进行Create或DoModal之后才有窗口内核对象。
- 非模态对话框
- 用Create创建之后,就可以操作该窗口了,比如设置窗口标题
- 模态对话框
- 用DoModal创建之后,则不能在这个函数之后对窗口操作,因为这个函数是一个函数,当函数返回时这个窗口就被销毁了。
- 解决方法,在这个窗口创建之后,在对窗口操作。回顾要点2,我们可以在这个DoModal窗口的OnInitDiadlg函数来操作窗口,因为这个时候已经有了窗口内核对象。
4.DoModal函数。
- 返回值,是一个IN_PTR,实际上就是一个LONG,这个返回值取决于关闭窗口所返回的消息。
5.常用的关闭窗口所返回的消息。
- OnCancel()
- OnOK()