有什么办法(如果是,请提出建议:))在另一个填充它的窗口内创建窗口,并且始终保持 100% 的宽度、高度并始终保持与父级相同的位置?简而言之,创建与父窗口相同(大小和移动)的窗口。现在我有这个:
hWnd = CreateWindowEx(WS_EX_TOOLWINDOW,L"Class", L"Title",WS_VISIBLE | WS_POPUP,
0, 0, 0, 0,hParent, NULL, GetModuleHandle(NULL), NULL );
我正在检查WM_SIZE
或检查WM_WINDOWPOSCHANGING
CallWndRetProc 中的大小变化。
if(msg->message == WM_WINDOWPOSCHANGING && msg->hwnd == hParent){
WINDOWPOS* pos = (WINDOWPOS*)msg->lParam;
SetWindowPos(hWnd, 0, pos->x, pos->y, pos->cx, pos->cy, SWP_NOACTIVATE);
}
但是有一个问题,pos
相对于 hParents 窗口的坐标和 SetWindowPos 设置相对于整个屏幕的位置。也许有更简单的方法可以将 hWnd 窗口保持在与 hParent 相同的位置?