gpt4 book ai didi

c++ - 在运行时从 MFC 中的派生类添加控件

转载 作者:行者123 更新时间:2023-11-28 03:15:21 25 4
gpt4 key购买 nike

我有两个类(class)。类 DialogBase 继承自 CDialogDialogDerived类继承自DialogBase。

BOOL DialodDervied::OnInitDialog()
{
CDialogBase::OnInitDialog();
//Add Dynamic Control to Main Dialog from here
}

我想在通过派生类调用时在对话框(CDialogBase)中动态添加一个复选框。是否可以?如果是,如何?

最佳答案

声明一个成员变量CButton m_ctrl_chk,覆盖DialodDervied::OnCreate()并添加如下代码

int DialodDervied::OnCreate(LPCREATESTRUCT lpCreateStruct)
{ if (CDialogEx::OnCreate(lpCreateStruct) == -1)
return -1;

m_ctrl_chk.Create(_T("Checkmate"), WS_CHILD | WS_VISIBLE | WS_TABSTOP | BS_AUTOCHECKBOX,
CRect(5, 5, 100, 20), this, 1234); // the 1234 value is the ID of the control

return 0;
}

使用类似的类(CEditCStaticCButton、...)以相同的方式创建其他类型的控件。

关于c++ - 在运行时从 MFC 中的派生类添加控件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17079787/

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