Dialog Class不允许我在对话框中与CButton交互?

时间:2012-04-05 00:45:44

标签: c++ visual-c++ mfc

如果我在myTab类中创建了CButton,我就无法以用户身份与它进行交互。

但是,如果我在主CDialog中“创建”CButton并将pParentWnd设置为dlgMine,那么我可以与之交互。

THX

//Main CDialog

CDialog *dlgMine = new myTab(this);
dlgMine->Create(IDD_DIALOG1,this);

dlgMine->SetWindowPos(&wndTop, 20, 20, 300, 300, SWP_SHOWWINDOW);

myTab::myTab(CWnd* pParent /*=NULL*/)
    : CDialog(myTab::IDD, pParent)
{
    //{{AFX_DATA_INIT(myTab)
        // NOTE: the ClassWizard will add member initialization here
    //}}AFX_DATA_INIT

    CButton *btn = new CButton();
    btn->Create("Run", WS_BORDER|WS_CHILD|WS_VISIBLE|BS_PUSHBUTTON,CRect(40,40,100,100),this,10);
}

1 个答案:

答案 0 :(得分:2)

您不应在对话框构造函数中创建按钮,因为仍未创建对话框本身。请改为在OnInitDialog中进行。