【发布时间】:2012-07-30 09:26:28
【问题描述】:
我有一个显示 CFrameWnd 的应用程序,该 CFrameWnd 显示在主窗口的顶部。当用户为窗口选择某种模式时,我需要窗口不可移动且不可调整大小。
我的 CFrameWnd 是使用样式 WS_OVERLAPPEDWINDOW | WS_THICKFRAME | WS_POPUP
我遇到了一个解决方案,它使用 CWndOnNcHitTest 的重载来重写HTLEFT,HTRIGHT,HTTOP,HTTOPLEFT,HTTOPRIGHT,HTBOTTOM,HTBOTTOMLEFT,HTBOTTOMRIGHT,HTSIZE,HTCAPTIONto HTBORDER以防止框架识别负责调整大小/移动的区域。
在我的情况下,此方法适用于调整大小,但移动窗口仍然是可能的,尽管 hittest 覆盖工作正常(通过跟踪验证)。
我的方法有什么问题吗,或者有什么东西干扰了这个解决方案,如果是这样,你有什么建议可以去哪里看吗?
【问题讨论】:
标签: visual-c++ mfc