gpt4 book ai didi

c++ - MFC:CFormView 派生类的 OnInitialUpdate 函数

转载 作者:太空狗 更新时间:2023-10-29 20:32:45 26 4
gpt4 key购买 nike

我的 CFormView 派生类的结构如下:

class FormViewClass : public CFormView
{
...
FormViewClass();
void Initialize();
virtual void OnInitialUpdate();
...
};

理想情况下,我想在构造函数的主体中调用 Initialize() 函数,如下所示:

FormViewClass::FormViewClass()
{
...
// originally I want to call Initialize function here
Initialize();
...
}

但是,既然我希望这个函数在创建的时候就负责这个类的所有初始化,而且它包含了组合框、编辑控件、复选框控件、单选按钮控件等MFC对象的初始化,我应该而不是像我想的那样在这里调用 Initialize() 函数:

void FormViewClass::OnInitialUpdate()
{
// Should I call Initialize function instead here?
Initialize();
}

目前我在构造函数中有非 MFC 内存和对象初始化(因此在构造函数中调用 Iniitalize() 辅助函数)和 OnIniitalUpdate() 处理函数中的 MFC 对象初始化。很高兴听到您对此的想法,以便我可以正确地重构代码。提前致谢。

最佳答案

我认为你这样做是对的。

一般来说,我会尝试尽早初始化(但不要早于 8-),因此在构造函数中执行非 GUI 操作,在 OnInitialUpdate 中执行 GUI 操作有道理。

(如果 OnInitDialog 存在于 CFormView ,那可能比 OnInitialUpdate 更好,但是 I don't think it does 。)

关于c++ - MFC:CFormView 派生类的 OnInitialUpdate 函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1029711/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com