【发布时间】:2021-10-23 16:02:20
【问题描述】:
我需要知道在创建 CWnd 时如何访问GetClientArea()。显然,在构造函数中创建它之前不能调用它,我只想让框架处理OnCreate(),那么我应该什么时候调用它呢?有没有我可以使用的OnPostCreate() 处理程序或类似的东西?
【问题讨论】:
-
"我只想让框架处理
OnCreate()"。所以重写它,并首先调用基类的实现。 -
谢谢,这有点用。即使在我覆盖并调用基类的 OnCreate() 之后,GetClientRect(&rect) 仍然没有为 rect 对象提供任何值。所有属性都只是 0。有什么想法吗?
-
显示您如何覆盖
OnCreate。还要展示一个最小的可重现示例,或者至少说明您是否使用 SDI、MDI、如何创建此窗口等。 -
在创建窗口后,您可能必须等待第一条
WM_SIZE消息,然后才能确定大小是否正确。