MFC中对话框中OnInitDialog()和OnCreate()的区别

通常你要先建立(OnCreate)一个窗体, 然后再对他进行初始化(OninitDialog).

 

 

  响应WM_CREATE消息(即OnCreate)的时候窗口还没有建立,你可以给成员变量赋值,也可以修改窗口的基本内容比如风格,但是不能对窗口控件操作,因为窗口还没有建立。

  在响应WM_CREATE消息的时候,对话框及子控件还未创建完成,亦是说只是通知系统说要开始创建窗口啦,这个消息响应完之后,对话框和子控件才开始创建。因此在此消息响应函数中无法对控件进行修改和初始化。

 


  响应WM_INITDIALOG消息(即OnInitDialog)时候窗口已经建立,你可以移动窗口,修改风格等等,也可以给成员变量赋值。

  WM_INITDIALOG消息响应函数是在程序运行时,当其对话框和子控件全部创建完毕,将要显示内容的时候发送的消息。因此可以在WM_INITDIALOG消息响应函数中添加对编辑框控件的初始化和修改。

posted @ 2012-07-12 19:48  happyboy2  阅读(392)  评论(0编辑  收藏  举报