我用CreateWindowEx()创建了两个窗口,现在我想将它们并排放置,这样每当一个移动时,另一个移动相对于另一个。
实施此方法的正确方法是什么?
目前,我正在使用这段代码:
case WM_MOVING: // When the main window is being moved
GetWindowRect(hWnd, &rWnd); // Get the current position of the main window
MoveWindow(hwStats, rWnd.right - 1, rWnd.top, 140, 450, 1); // Move the other window relative to the main window
return 1; // WM_MOVING is handled by the application
break; // Done.
问题在于,无论何时我移动窗口,其他窗口都会拖动几个像素 现在,它看起来并不太好,但我真的更喜欢它看起来更稳固。
答案 0 :(得分:1)
要解决此问题,我需要将case
从WM_MOVING
更改为WM_MOVE
,将函数MoveWindow() to
更改为SetWindowPos()
。
感谢Martin James,他告诉我“Windows API Docking”。这非常有帮助。