QT中QWidget类参考!(77)
2023-06-03 来源:旧番剧
也可以参考QSize::isValid()、minimumSizeHint、sizePolicy、minimumSize和updateGeometry()。
通过sizeHint()来获得属性值。
QSize sizeIncrement
这个属性保存的是窗口部件的大小增量。
当用户重新定义窗口的大小时,大小会在水平方向上按sizeIncrement().width()像素和垂直方向上按sizeIncrement.height()像素来逐步变化,基础大小为baseSize() 。首选的窗口部件大小为非负整数i和j:
width = baseSize().width() i * sizeIncrement().width();
height = baseSize().height() j * sizeIncrement().height();
注意,当你为所有的窗口部件设置大小增量时,它只对顶级窗口部件有效。
警告:大小增量在Windows下没有效果,并且也许会被X上的窗口管理器忽视。
也可以参考size、minimumSize和maximumSize。
通过setSizeIncrement()设置属性值并且通过sizeIncrement()来获得属性值。
QSizePolicy sizePolicy
这个属性保存的是窗口部件的默认布局行为。
如果有一个QLayout管理这个窗口部件的子对象,这个大小策略由布局使用的大小策略指定。如果没有这样的QLayout,那么这个函数的结果被使用。
默认策略是首选/首选,也就是说窗口部件可以被自由地重新定义大小,但是首选的是sizeHint()返回的大小。具有按钮特征的窗口部件设置它们的大小策略为水平方向可以伸展,但垂直方向固定。这同样适用于行编辑控件(比如QLineEdit、QSpinBox或可编辑的QComboBox)和其它水平方向的窗口部件(比如QProgressBar)。QToolButton的大小策略通常是允许两个方向都可以变化。支持不同方向的窗口部件(比如QSlider、QScrollBar或QHeader)仅仅按被指定的方向变化。可以提供滚动条的窗口部件(通常是QScrollView的子类)趋向于指定它们可以使用额外的空间,并且它们可以在小于sizeHint()时正常工作。