Home · All Classes · Modules  · QSS HELP  · QSS 案例 · VER007 HOME

QSizePolicy Class Reference
[QtGui module]

该QSizePolicy类是描述水平和垂直大小调整政策的布局属性。More...

Types

Methods

Special Methods


Detailed Description

该QSizePolicy类是描述水平和垂直大小调整政策的布局属性。

窗口小部件的大小策略是愿意以各种方式来被调整大小的表达式,并且会影响该部件是由处理layout engine。每个插件返回一个QSizePolicy描述它宁愿当被布置在水平和垂直大小调整政策。你可以通过改变改变这个特定的小部件QWidget.sizePolicy属性。

QSizePolicy包含两个独立的QSizePolicy.Policy值和两个拉伸因子; 1描述的窗口小部件的水平尺寸的政策,以及其他描述其垂直尺寸的策略。它还包含一个标志,以指示其优选尺寸的高度和宽度是否是相关的。

水平和垂直的政策可以在构造函数中设置,并使用改变了setHorizontalPolicy()和setVerticalPolicy()函数。拉伸因子可使用设置setHorizontalStretch()和setVerticalStretch()函数。的标志,表示该部件的sizeHint()是宽度依赖性(如菜单栏或一个字包装标籤)可以使用被设置了setHeightForWidth()函数。

电流的大小政策和伸展因子使用被检索的horizontalPolicy( )verticalPolicy( )horizontalStretch()和verticalStretch()函数。或者,使用transpose()函数来交换的水平和垂直的政策和延伸。该hasHeightForWidth( )函数返回的标志的指示尺寸暗示的依赖关系的现状。

使用expandingDirections( )函数来确定相关的部件是否可以使更多的空间使用比其sizeHint()功能指示,以及找出哪些方向可以扩展。

最后, QSizePolicy类提供比较该尺寸的政策,在给定策略操作符,以及一个QVariant运营商存储此QSizePolicy作为QVariant对象。


Type Documentation

QSizePolicy.ControlType

这个枚举变量指定不同类型的窗口小部件的布局互动方面:

Constant Value Description
QSizePolicy.DefaultType 0x00000001 默认类型,未指定时。
QSizePolicy.ButtonBox 0x00000002 A QDialogButtonBox实例。
QSizePolicy.CheckBox 0x00000004 A QCheckBox实例。
QSizePolicy.ComboBox 0x00000008 A QComboBox实例。
QSizePolicy.Frame 0x00000010 A QFrame实例。
QSizePolicy.GroupBox 0x00000020 A QGroupBox实例。
QSizePolicy.Label 0x00000040 A QLabel实例。
QSizePolicy.Line 0x00000080 A QFrame例如用QFrame.HLine or QFrame.VLine
QSizePolicy.LineEdit 0x00000100 A QLineEdit实例。
QSizePolicy.PushButton 0x00000200 A QPushButton实例。
QSizePolicy.RadioButton 0x00000400 A QRadioButton实例。
QSizePolicy.Slider 0x00000800 A QAbstractSlider实例。
QSizePolicy.SpinBox 0x00001000 A QAbstractSpinBox实例。
QSizePolicy.TabWidget 0x00002000 A QTabWidget实例。
QSizePolicy.ToolButton 0x00004000 A QToolButton实例。

这个枚举被引入或修改的Qt 4.3 。

该ControlTypes类型是一个typedef为QFlags\u003cControlType\u003e 。它存储的ControlType值的或组合。

See also setControlType()和controlType( ) 。

QSizePolicy.Policy

这个枚举变量描述了各种每一维度大小类型构建时使用QSizePolicy

Constant Value Description
QSizePolicy.Fixed 0 QWidget.sizeHint( )是唯一可以接受的选择,所以小部件不能增大或缩小(一个按钮,例如垂直方向) 。
QSizePolicy.Minimum GrowFlag 在sizeHint ( )是最小的,并且足够了。窗口小部件可以扩充,但它是更大(的按钮,例如水平方向)没有任何优势。它不能小于由sizeHint ()中提供的尺寸。
QSizePolicy.Maximum ShrinkFlag 在sizeHint ()是一个最大值。窗口小部件可以被任何缩水金额不损害如果其他部件所需要的空间(如分隔线) 。它不能小于由sizeHint ()中提供的尺寸。
QSizePolicy.Preferred GrowFlag | ShrinkFlag 在sizeHint ( )是最好的,但小部件可以被缩小,仍然是有用的。窗口小部件可以扩充,但它比sizeHint大没有优势( ) (默认QWidget政策)。
QSizePolicy.Expanding GrowFlag | ShrinkFlag | ExpandFlag 在sizeHint ()是一个明智的大小,但小部件可以被缩小,仍然是有用的。窗口小部件可以利用额外的空间,所以它应该得到尽可能多的空间可能(例如一个水平滑块的水平方向) 。
QSizePolicy.MinimumExpanding GrowFlag | ExpandFlag 在sizeHint ( )是最小的,并且足够了。窗口小部件可以利用额外的空间,所以它应该得到尽可能多的空间可能(例如一个水平滑块的水平方向) 。
QSizePolicy.Ignored ShrinkFlag | GrowFlag | IgnoreFlag 在sizeHint ( )被忽略。该部件将得到尽可能多的空间可能。

See also PolicyFlagsetHorizontalPolicy()和setVerticalPolicy( ) 。

QSizePolicy.PolicyFlag

这些标志被组合在一起以形成各种Policy价值观:

Constant Value Description
QSizePolicy.GrowFlag 1 如有必要,该部件可以超过它的大小提示。
QSizePolicy.ExpandFlag 2 该部件应该得到尽可能多的空间可能。
QSizePolicy.ShrinkFlag 4 窗口小部件可以收缩低于其尺寸暗示如果必要的。
QSizePolicy.IgnoreFlag 8 该物件的尺寸暗示被忽略。该部件将得到尽可能多的空间可能。

See also Policy


Method Documentation

QSizePolicy.__init__ (self)

构造一个QSizePolicy与对象Fixed作为它的水平和垂直的政策。

该策略可以使用改变了setHorizontalPolicy()和setVerticalPolicy()函数。使用setHeightForWidth()函数,如果小部件的优选的高度是依赖于部件的宽度(例如,一个QLabel用换行) 。

See also setHorizontalStretch()和setVerticalStretch( ) 。

QSizePolicy.__init__ (self, Policy horizontal, Policy vertical)

构造一个QSizePolicy与给定对象horizontalvertical政策和DefaultType作为控件类型。

使用setHeightForWidth()如果小部件的优选的高度是依赖于部件的宽度(例如,一个QLabel用换行) 。

See also setHorizontalStretch()和setVerticalStretch( ) 。

QSizePolicy.__init__ (self, Policy horizontal, Policy vertical, ControlType type)

构造一个QSizePolicy与给定对象horizontalvertical政策,并指定控件type

使用setHeightForWidth()如果小部件的优选的高度是依赖于部件的宽度(例如,一个QLabel用换行) 。

此功能被引入Qt的4.3 。

See also setHorizontalStretch( )setVerticalStretch()和controlType( ) 。

QSizePolicy.__init__ (self, QVariant variant)

QSizePolicy.__init__ (self, QSizePolicy)

ControlType QSizePolicy.controlType (self)

返回与它这种规模的政策适用于小部件关联的控件类型。

此功能被引入Qt的4.3 。

See also setControlType( ) 。

Qt.Orientations QSizePolicy.expandingDirections (self)

返回一个widget是否可以使更多的空间使用比QWidget.sizeHint( )函数表示。

的值Qt.Horizontal or Qt.Vertical也就是说,小部件可以水平或垂直生长(即水平或垂直的政策是Expanding or MinimumExpanding),而Qt.Horizontal|Qt.Vertical也就是说,它可以在两维生长。

See also horizontalPolicy()和verticalPolicy( ) 。

bool QSizePolicy.hasHeightForWidth (self)

返回True如果控件的首选高度依赖于它的宽度,否则返回False 。

See also setHeightForWidth( ) 。

bool QSizePolicy.hasWidthForHeight (self)

返回True如果Widget的宽度取决于它的高度,否则返回False 。

此功能被引入Qt的4.8 。

See also setWidthForHeight( ) 。

Policy QSizePolicy.horizontalPolicy (self)

返回大小政策的水平分量。

See also setHorizontalPolicy( )verticalPolicy()和horizontalStretch( ) 。

int QSizePolicy.horizontalStretch (self)

返回大小政策的水平拉伸因子。

See also setHorizontalStretch( )verticalStretch()和horizontalPolicy( ) 。

QSizePolicy.setControlType (self, ControlType type)

设置与它这种规模的政策适用于小部件关联的控件类型type

控制类型指定这个大小政策适用widget的类型。它是利用一些风格,特别是QMacStyle,插入部件之间适当的间距。例如, Mac OS X的水族准则指定按钮应该由12个像素进行分离,而垂直堆叠的单选按钮只需要6个像素。

此功能被引入Qt的4.3 。

See also controlType()和QStyle.layoutSpacing( ) 。

QSizePolicy.setHeightForWidth (self, bool b)

设置一个标志,确定部件的首选高度是否取决于它的宽度,以dependent

See also hasHeightForWidth()和setWidthForHeight( ) 。

QSizePolicy.setHorizontalPolicy (self, Policy d)

设置的水平分量,以给定的policy

See also horizontalPolicy( )setVerticalPolicy()和setHorizontalStretch( ) 。

QSizePolicy.setHorizontalStretch (self, int stretchFactor)

将大小设置政策的水平伸长率与给定stretchFactor

See also horizontalStretch( )setVerticalStretch()和setHorizontalPolicy( ) 。

QSizePolicy.setVerticalPolicy (self, Policy d)

设置垂直分量为给定的policy

See also verticalPolicy( )setHorizontalPolicy()和setVerticalStretch( ) 。

QSizePolicy.setVerticalStretch (self, int stretchFactor)

设置大小政策的垂直拉伸因子来定stretchFactor

See also verticalStretch( )setHorizontalStretch()和setVerticalPolicy( ) 。

QSizePolicy.setWidthForHeight (self, bool b)

设置一个标志,确定widget的宽度是否依赖于它的高度,以dependent

这是仅支持QGraphicsLayout的子类。它不可能有两个高度为宽度和宽度作高度限制在同一时间的布局。

此功能被引入Qt的4.8 。

See also hasWidthForHeight()和setHeightForWidth( ) 。

QSizePolicy.transpose (self)

交换的水平和垂直的政策和延伸。

Policy QSizePolicy.verticalPolicy (self)

返回大小政策的垂直分量。

See also setVerticalPolicy( )horizontalPolicy()和verticalStretch( ) 。

int QSizePolicy.verticalStretch (self)

返回大小政策的垂直拉伸因子。

See also setVerticalStretch( )horizontalStretch()和verticalPolicy( ) 。

bool QSizePolicy.__eq__ (self, QSizePolicy s)

bool QSizePolicy.__ne__ (self, QSizePolicy s)




PyQt 4.10.3 for X11 Copyright © Riverbank Computing Ltd and Nokia 2012 Qt 4.8.5