是否可以使用覆盖 wm_nccalcsize 的技巧来使用 opengl 绘制整个窗口区域?
我需要保留 Windows 的所有航空功能(在本例中为 win 7),所以我使用 (WS_POPUP | WS_SYSMENU | WS_MAXIMIZEBOX | WS_MINIMIZEBOX | WS_THICKFRAME) 样式
它适用于最大化模式,我可以通过调整 Lparam 将边框留在屏幕之外。
但是一个普通的窗口仍然有 8px 的边框,即使它们应该是客户端矩形的一部分(我用 GetClientRect()
这一切都是在我初始化 opengl 上下文之前完成的。所以我不知道发生了什么。或者如果这甚至可能。我应该只创建无边界并重新实现所有航空功能吗?(我不会那样做的)
upd 2:如果我在初始化 Opengl 上下文之前使用 GDI 绘制一个矩形,这就是我得到的: 一个很好的 (0,0,200,200) 矩形,从非客户区开始 所以这是 opengl 上下文问题。我在 msdn docs 中看到,opengl 只在客户区绘制。它仍然这样做,忽略我将客户端矩形扩展到整个窗口。嗖嗖嗖的。