0

我正在绘制一个矩形(在 OpenGL 中),角基于光标位置。我将像素位置修改为浮动位置,但我需要宽度和高度(保存在某处)。

所以我做了一些测试,在一个 1024x512 的窗口上,左上角确实是 (0,0) 但下角是 (1007,473) 或附近的东西。

现在它工作正常,但如果窗口调整大小,那么它显然将不再工作,所以这是我的问题:

我怎样才能得到边框大小?这样我想我可以从窗口大小中减去它,并为我的光标找到正确的位置来绘制矩形。

4

1 回答 1

3

在 Windows 上,您可以使用GetWindowRectGetClientRect

RECT windowRect;
GetWindowRect(hwnd, &windowRect);

RECT clientRect;
GetClientRect(hwnd, &clientRect);

int borderWidth = ((windowRect.right - windowRect.left) - (clientRect.right -clientRect.left))/2;

虽然GetClientRect应该给你窗口的内部宽度,这对你来说应该足够了。

int innerWidth = clientRect.right - clientRect.left;
于 2013-05-24T00:40:57.547 回答