【发布时间】:2011-03-08 10:26:25
【问题描述】:
我需要一个 MSVC++ 中的虚拟窗口,它永远不可见,甚至在应用程序的主窗口之前创建。渲染引擎需要它。因此,如果可能的话,我宁愿不必注册课程。
为了测试,最好让它可见以证明它在那里 - 我可以使用静态或按钮或其他东西吗?我一直在尝试使用 CreateWindow(),但是当我得到一个返回值时,没有任何可见的东西出现。
【问题讨论】:
-
"required by a rendering engine"表示这个窗口是用来创建一个渲染上下文的。是这样吗?在这种情况下,您最好创建一个与您的应用程序窗口具有相同类的窗口。否则,您无法保证 a) 您完全可以创建上下文,并且 b) 该上下文将与您以后使用的上下文兼容。无论如何,您都必须为您的主窗口注册一个课程,所以它不会“额外收费”,真的。
-
我没有创建自己的主窗口,所以我没有类可重用...并且该窗口将被引擎用作虚拟渲染窗口...从未实际渲染到。
-
我支持这个,因为我经常遇到需要虚拟 hWnd 的情况。例如,我需要一个用于某些 win32 字体 API 的 hwnd,以便在不将其显示到窗口的情况下将字体 blit 到 2d 内存数组中。
标签: c++ winapi visual-c++