[QtGui module]
该QSizePolicy类是描述水平和垂直大小调整政策的布局属性。More…
Types
enum ControlType { DefaultType, ButtonBox, CheckBox, ComboBox, ..., ToolButton }
class **[ControlTypes](docs_index.htm)**
enum Policy { Fixed, Minimum, Maximum, Preferred, ..., Ignored }
enum PolicyFlag { GrowFlag, ExpandFlag, ShrinkFlag, IgnoreFlag }
Methods
__init__ (self)
__init__ (self, Policy horizontal, Policy vertical)
__init__ (self, Policy horizontal, Policy vertical, ControlType type)
__init__ (self, QVariant variant)
__init__ (self, QSizePolicy)
ControlType controlType (self)
Qt.Orientations expandingDirections (self)
bool hasHeightForWidth (self)
bool hasWidthForHeight (self)
Policy horizontalPolicy (self)
int horizontalStretch (self)
setControlType (self, ControlType type)
setHeightForWidth (self, bool b)
setHorizontalPolicy (self, Policy d)
setHorizontalStretch (self, int stretchFactor)
setVerticalPolicy (self, Policy d)
setVerticalStretch (self, int stretchFactor)
setWidthForHeight (self, bool b)
transpose (self)
Policy verticalPolicy (self)
int verticalStretch (self)
Special Methods
bool __eq__ (self, QSizePolicy s)
bool __ne__ (self, QSizePolicy s)
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 PolicyFlag,setHorizontalPolicy()和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与给定对象horizontal和vertical政策和DefaultType作为控件类型。
使用setHeightForWidth()如果小部件的优选的高度是依赖于部件的宽度(例如,一个QLabel用换行) 。
See also setHorizontalStretch()和setVerticalStretch( ) 。
QSizePolicy.__init__ (self, Policy horizontal, Policy vertical, ControlType type)
构造一个QSizePolicy与给定对象horizontal和vertical政策,并指定控件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 。
](docs_qsizepolicy.html#ControlType-enum)
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)
[
返回大小政策的水平分量。
](docs_qsizepolicy.html#Policy-enum)
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)
[
返回大小政策的垂直分量。
](docs_qsizepolicy.html#Policy-enum)
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)