+ -
当前位置:首页 → 问答吧 → 在对话框上创建子窗口成功,但不显示?

在对话框上创建子窗口成功,但不显示?

时间:2011-12-07

来源:互联网

C/C++ code


BOOL CMainForm::AXCreate(int index, CWnd *wnd, const RECT& rect)
{
    BOOL bl = FALSE;

    try
    {
        LPCTSTR clsname = AfxRegisterWndClass(CS_DBLCLKS);
        bl=Create(clsname, _T(""), WS_CHILD | WS_VISIBLE, rect, wnd, index);
        if (bl==FALSE)
        {
            AfxMessageBox(_T("CMainForm!"));
        }
        else
        {
        }
    }
    catch(...)
    {
        AfxMessageBox(_T("CMainForm error!"));
    }
    return bl;
}

BOOL CMainForm::CreateWin(int index, CWnd *wnd, const RECT &rect)
{
    BOOL bl = AXCreate(index, wnd, rect);        //创建一个子窗口


    CRect t;
    this->GetClientRect(&t);


    this->GetDC()->SetBkColor(RGB(255, 0, 0));

    return TRUE;
}




AXCreate函数返回成功 可是界面无变化 操作也没变化 返回也是成功 怎么回事啊

作者: wuxiao0313   发布时间: 2011-12-07

用CreateWindow把,创建后还要updatewindow和ShowWindow

作者: dahaiI0   发布时间: 2011-12-07

加上 this->ShowWindow(SW_SHOW); 也不行 

作者: wuxiao0313   发布时间: 2011-12-07

没这样用过。

作者: foxriver_gjg1989   发布时间: 2011-12-07

我的也是啊 用的是Creat创建的子窗口 也木有显示

作者: haoruifly   发布时间: 2011-12-07

看看你创建的窗口大小,会不会把坐标写错了,四个点全在一个点上,所以没显示。

作者: zero_226   发布时间: 2011-12-07

热门下载

更多