mcs.szTitle = L"untitled";
mcs.szClass = childClassName;
mcs.hOwner = GetModuleHandle(NULL);
mcs.x = mcs.cx = CW_USEDEFAULT;
mcs.y = mcs.cy = CW_USEDEFAULT;
mcs.style = WS_HSCROLL;
hChild = (HWND)SendMessage(hMDIClient, WM_MDICREATE, 0, (LONG)&mcs);
,但我不能一个指针发送到具有WndProc的对象我想使用(见here在结束了的WndProc班)这样
hChild = CreateWindow(childClassName, L"", WS_VISIBLE, CW_USEDEFAULT, CW_USEDEFAULT, 400, 250, hMDIClient, NULL, GetModuleHandle(NULL), this);
但是做这样会导致与WINDO错误,也不会有zlose,没有最小化,没有最大化,我无法调整它,如果我创建另一个MDI子窗口,前一个将被取消选择。
是否可以使用SendMessage或CreateWindow,传递这个指针并仍然创建一个工作的MDI子窗口?
当你传递'MDICREATESTRUCT'到'WM_MDICREATE',则可以提供在'MDICREATESTRUCT.lParam对象指针'。 – 2014-12-14 22:04:45