对话框的常用回调函数(窗口创建时的消息和窗口销毁时的消息)

本文详细介绍了对话框在创建和关闭过程中的回调函数,包括WM_CREATE、WM_INITDIALOG、OnCreate、OnDestroy、WM_CLOSE、OnOK、OnCancel等。WM_INITDIALOG用于初始化对话框及其控件,而OnDestroy则是窗口关闭后的最后回调,不可阻止窗口关闭。同时讨论了如何在不同阶段对对话框进行操作和响应用户交互。
摘要由CSDN通过智能技术生成
  1. 无论是模态对话框还是非模态对话框,都可以直接申请基类CDialog 对象来创建。

窗口创建时的消息和虚函数包括WM_CREATE、WM_INITDIALOG、和PreSubclassWindow等;窗口关闭时的消息和虚函数包括WM_CLOSE、WM_DESTORY、OnOK和 OnCancel等。有些消息是所有窗口通用的,例如,WM_CREATE、WM_CLOSE、WM_DESTORY等。有些消息是对话框专用的回调函数,例如,WM_INITDIALOG消息,以及OnOK和 OnCancel虚函数等。

一、对话框创建过程

WM_CREATE和WM_INITDIALOG都是窗口刚创建时的回调消息,当窗口还未显示出来之前,对窗口作预先处理的回调函数。WM_CREATE是所有窗口通用的创建时回调消息,用于包括对话框、MDI或者SDI等任何窗口的初始化,对应的消息映射函数是OnCreate。可以在该函数中编写代码,在窗口刚创建还未显示时,修改父窗口的属性或者创建内部子窗口(但是不能初始化对话框内部控件)。WM_INITDIALOG是对话框专用消息,最常用来初始化对话框及其内部控件,对应消息映射函数是OnInitDialog。基类函数CDialog::OnInitDialog执行过程将所有对话框资源模板内的控件都创建完毕。因此,可以在该函数中,编写代码来对子窗口作初始化设置。

//创建一个基于对话框的程序,程序名为CTest。
//用OnCreate来初始化窗口

int CTestDlg::OnCreate(LPCREATESTRUCT lpCreateStruct)
{
    if
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值