在一个 MFC 应用程序中有一个窗格窗口。在那扇窗户上,
我添加了一个菜单栏和一个工具栏以及许多其他控件。窗格窗口可重新调整大小。
现在对于可调整大小的窗口,我已经覆盖了函数 OnSize()。在那里,我检索了顶部窗口大小,然后在其下方等等......然后对于每个控件,我检索了它的窗口并调用了 MoveWindow()。
我只是想确保它是在 MFC 中处理可调整大小的窗口/对话框的正确方法,还是有其他一些可用的方法。
谢谢
在一个 MFC 应用程序中有一个窗格窗口。在那扇窗户上,
我添加了一个菜单栏和一个工具栏以及许多其他控件。窗格窗口可重新调整大小。
现在对于可调整大小的窗口,我已经覆盖了函数 OnSize()。在那里,我检索了顶部窗口大小,然后在其下方等等......然后对于每个控件,我检索了它的窗口并调用了 MoveWindow()。
我只是想确保它是在 MFC 中处理可调整大小的窗口/对话框的正确方法,还是有其他一些可用的方法。
谢谢
一次移动大量控件时,最好使用DeferWindowPos
最小化重绘。我在https://stackoverflow.com/a/5739620/5987有一个如何将其用于可调整大小的 MFC 对话框的示例。
而不是重新发明轮子:尝试ResizableLib。它可以以非常简单的方式处理对话框的大小调整,您不必自己担心每个细节。