风格用UI_WNDSTYLE_CHILD会报错,用UI_WNDSTYLE_DIALOG/FRAME就不会。
窗体创建代码如下:
// TODO: 在此添加额外的初始化代码
if (m_dlgDuilib == NULL)
{
m_dlgDuilib.Create(this->m_hWnd, _T("DUIMainFrame1"), UI_WNDSTYLE_CHILD, 0, 0, 0, 800, 600);
//NULL, UI_WNDSTYLE_DIALOG & (~(WS_BORDER | WS_CAPTION)), 0, 0, 0, 800, 600);
}
m_dlgDuilib.CenterWindow();
m_dlgDuilib.ShowWindow(TRUE);
报错:UIBase.cpp
void CWindowWnd::CenterWindow()
{
ASSERT(::IsWindow(m_hWnd));
ASSERT((GetWindowStyle(m_hWnd)&WS_CHILD)==0);
RECT rcDlg = { 0 };
...
}
中断处:ASSERT((GetWindowStyle(m_hWnd)&WS_CHILD)==0);