【问题标题】:QWidget's minimumSize vs minimumSizeHintQWidget 的 minimumSize 与 minimumSizeHint
【发布时间】:2019-12-23 21:28:48
【问题描述】:

Qt 的小部件有 2 个属性决定它们可以有多小:

现在它们的基本区别似乎已经很清楚了:minimumSize 限制了小部件实际可以具有的大小,而 Qt 不允许将大小设置得更小。如果设置,它还会覆盖minimumSizeHint。然后minimumSizeHint 仅用于布局,不会将小部件的大小调整为小于调整其内容大小时的大小。

现在我正在实现一个自定义小部件,那里没有问题,我开始对此感到疑惑。

问题:你为什么要使用mininumSizeHint?场景是什么,您必须或想要使用它而不是总是使用minimumSize?为什么minimumSizeHint会存在?

(如果答案是“是的,sizeHint 足以应付一切”,那很好。)

【问题讨论】:

    标签: qt layout qwidget


    【解决方案1】:

    我认为主要区别在于minimumSize可以随时被任何其他对象更改,无论你喜欢与否,因为所有QWidgets都有一个公共的setMinimumSize()功能;而您的小部件单独控制minimumSizeHint() 返回的内容。

    作为自定义小部件的实施者,如果您的小部件具有您认为通常应该遵守的最小尺寸,您总是希望覆盖minimumSizeHint()。这就是内置 Qt 小部件的作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-08-22
      • 2012-07-11
      相关资源
      最近更新 更多