【问题标题】:Can I lock the width or height of an MFC dialog during resizing?我可以在调整大小期间锁定 MFC 对话框的宽度或高度吗?
【发布时间】:2011-07-12 16:00:04
【问题描述】:

有没有办法在 MFC 中将对话框的大小锁定在一个方向(仅限制宽度或仅高度)?

【问题讨论】:

  • 您的意思是其他而不是使对话框不可调整大小?我想不出比锁定宽度高度更好的方法了。
  • 是的,我的意思是让它在一维上不可调整大小(不是两个)。如何使用 MFC CDialog api 做到这一点?

标签: c++ visual-c++ mfc dialog resize


【解决方案1】:

您需要覆盖OnGetMinMaxInfo。在 OnInitDialog 中,您可以捕获当前高度,然后将其用于最小和最大高度。先调用__super::OnGetMinMaxInfo,然后只更改高度成员。请注意,在调用 OnGetMinMaxInfo 的前几次窗口可能不存在。

这是detailed article on GetMinMaxInfo

【讨论】:

  • +1 这是正确的解决方案。此外,还有一个很好的链接到 Joseph Newcomer 的网站。对于 MFC 开发人员来说,这是一个很好的资源。虽然我个人并没有过多使用__super;在此示例中,可以轻松地将其替换为 CDialog,以最大程度地减少歧义。
  • 很棒的链接,我以前在 MFC 中做同样的事情时使用过那个页面。
  • __super 非常适合重命名类的基类,因此您不必查找-替换现有的基类调用。
猜你喜欢
  • 1970-01-01
  • 2020-07-10
  • 2018-01-14
  • 2015-10-13
  • 2010-11-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多