VS2008中OnInitDialog那点事



在用VS2008写MFC时,自已添加对话框,并生成类后,并没有OnInitDialog(void)函数,而这个函数往往要初始化一些东西,没有它感觉很麻烦,怎么办呢?既然微软不给力,那就自己动手,丰衣足食呗!

手动添加步骤如下:

1. 在生成对话框的类中右击->添加函数,函数名为:OnInitDialog 类型为BOOL,并设置为虚函数;

2. 修改生成的函数,生成的原函数为

BOOL ***::OnInitDialog(void)
{
return 0;
}

但是此时还不行,一定要添加CDialog::OnInitDialog();如下示:

BOOL ***::OnInitDialog(void)
{
CDialog::OnInitDialog(); // 一定要加啊!
//------------在以下添加自已的代码---

return 0;
}

下面尽情写你的初始化数据吧!

//PS:本文已经更新,这个方法不适合使用,请到这里

 标签: C++, VS2008, OnInitDialog

作者  :  sailor

仅仅看明白了还不够,能把别人给讲明白了才算及格。


  1. sailor
    1#
    sailor

    欢迎再来

    May 13th, 2011 at 07:06 pm 回复
  2. 这个其实没有那么麻烦的啦,虽然vs2005和vs2008是没有类向导的(这点比较DT),但是它类属性里面是可以直接添加虚函数的啦,这个可以自动生成,比你那个快多了。。。

    June 25th, 2011 at 12:25 am 回复
      1. sailor
        sailor

        哦哦,我刚刚试过了,的确可以,又学到了一点~

        June 25th, 2011 at 12:43 am 回复
  3. 夏影
    3#
    夏影

    直接在类向导里重写该虚函数不就行了么?

    November 26th, 2011 at 02:55 pm 回复
      1. sailor
        sailor

        嗯,是的,已经更新了!谢谢提醒

        November 30th, 2011 at 02:12 pm 回复


最新文章