使用 VB6,我知道如果 AutoRedraw 为真,则不会调用 Form_Paint。
我有一些代码只有在 Form_Paint 中调用时才能始终如一地工作。
此代码(在 MDI 项目中工作)通过 GetMenu() API 调用获取父级当前活动菜单的句柄。如果没有在 Form_Paint 中调用,该调用有时会返回旧的菜单句柄。
我的一种形式有 AutoRedraw = true。我已经在 Form_Activate 中尝试过 GetMenu(parent.hWnd),但这为时过早。
我也尝试过覆盖 WindowProc 并从 Form_Activate 发送 WM_USER 消息。这是一个改进,但仍然不够一致。
您如何在子窗体的生命周期中稍后调用 GetMenu(parent.hWnd)?