1.碰到一个很奇怪的问题,建立一个窗体后,代码如下:
1 class CAddressBar: 2 public CWindowImpl3 { 4 public: 5 CAddressBar(void); 6 ~CAddressBar(void); 7 8 DECLARE_WND_CLASS(L"address"); 9 10 BEGIN_MSG_MAP(CAddressBar) 11 //MESSAGE_HANDLER(WM_CREATE, OnCreate) 12 END_MSG_MAP() 13 };
然后在主窗体中进行定义一个窗体
1 CAddressBar m_AddressBar; 2 //在OnCreate中进行创建这个窗体 3 HWND hWndAddressBar = m_AddressBar.Create(m_hWnd, rcDefault, NULL, WS_VISIBLE | WS_CHILD);// ATL_SIMPLE_CMDBAR_PANE_STYLE);
编译可以进行,但是运行时,老报一个assert,就说新建窗体的m_hWnd不为空,检查了好几遍,没有什么问题。不知道原因在哪儿? 最后clean了一下后,重编,就OK。