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

QStackedLayout Class Reference
[QtGui module]

该QStackedLayout类提供了一个堆叠部件,其中只有一个小部件是可见的时间的。More...

继承QLayout

Types

Methods

Qt Signals


Detailed Description

该QStackedLayout类提供了一个堆叠部件,其中只有一个小部件是可见的时间的。

QStackedLayout可以用来创建类似于通过提供一个用户接口QTabWidget。还有一个方便QStackedWidget类建立在QStackedLayout之上。

一个QStackedLayout可以填入一些子控件( “页” )的。例如:

     QWidget *firstPageWidget = new QWidget;
     QWidget *secondPageWidget = new QWidget;
     QWidget *thirdPageWidget = new QWidget;

     QStackedLayout *stackedLayout = new QStackedLayout;
     stackedLayout->addWidget(firstPageWidget);
     stackedLayout->addWidget(secondPageWidget);
     stackedLayout->addWidget(thirdPageWidget);

     QVBoxLayout *mainLayout = new QVBoxLayout;
     mainLayout->addLayout(stackedLayout);
     setLayout(mainLayout);

QStackedLayout没有提供内在的手段来切换页面的用户。这通常是通过做QComboBoxQListWidget用于存储QStackedLayout的页面的标题。例如:

     QComboBox *pageComboBox = new QComboBox;
     pageComboBox->addItem(tr("Page 1"));
     pageComboBox->addItem(tr("Page 2"));
     pageComboBox->addItem(tr("Page 3"));
     connect(pageComboBox, SIGNAL(activated(int)),
             stackedLayout, SLOT(setCurrentIndex(int)));

当填充布局,窗口小部件添加到内部列表。该indexOf( )函数返回在该列表中一个部件的指标。窗口小部件可以被使用添加到该列表的末尾的addWidget( )函数,或者使用插入一个给定索引处的insertWidget()函数。该removeWidget( )函数移除插件的给定索引从布局的。包含在布局窗口小部件的数量,可使用所获得的count()函数。

widget( )函数返回的部件在给定的索引位置。这显示在屏幕上的小部件的指数由下式给出currentIndex() ,并且可以使用被改变setCurrentIndex( ) 。以类似的方式,将当前显示的窗口小部件可以使用被检索的currentWidget()函数,并使用改变了setCurrentWidget()函数。

每当当前部件的布局的变化或窗口小部件是从布局中删除,则currentChanged()和widgetRemoved()信号被分别发射。


Type Documentation

QStackedLayout.StackingMode

这个枚举变量指定的布局如何处理其对自己的知名度子部件。

Constant Value Description
QStackedLayout.StackOne 0 只在当前窗口小部件是可见的。这是默认的。
QStackedLayout.StackAll 1 所有部件都是可见的。当前插件仅仅提高。

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


Method Documentation

QStackedLayout.__init__ (self)

构造一个QStackedLayout没有父。

This QStackedLayout必须安装在稍后一个部件才能生效。

See also addWidget()和insertWidget( ) 。

QStackedLayout.__init__ (self, QWidget parent)

parent的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。

构造一个新的QStackedLayout用给定的parent

这种布局将在自行安装parent小工具和管理其子的几何形状。

QStackedLayout.__init__ (self, QLayout parentLayout)

parentLayout的说法,如果不是没有,原因self通过Qt的,而不是PyQt的拥有。

构造一个新的QStackedLayout并将其插入到给定的parentLayout

QStackedLayout.addItem (self, QLayoutItem item)

item说法有它的所有权转移给Qt的。

从重新实现QLayout.addItem( ) 。

int QStackedLayout.addWidget (self, QWidget w)

w说法有它的所有权转移给Qt的。

将给定widget这一布局的结尾,并返回的索引位置widget

如果QStackedLayout为空,此函数被调用之前,给定的widget成为当前窗口小部件。

See also insertWidget( )removeWidget()和setCurrentWidget( ) 。

int QStackedLayout.count (self)

int QStackedLayout.currentIndex (self)

QWidget QStackedLayout.currentWidget (self)

返回当前窗口小部件,或者0 ,如果有这个布局没有任何部件。

See also currentIndex()和setCurrentWidget( ) 。

int QStackedLayout.insertWidget (self, int index, QWidget w)

w说法有它的所有权转移给Qt的。

插入给定widget在给定的index在这QStackedLayout。如果index超出范围,小部件被追加(在这种情况下,它是实际的指数widget即返回) 。

如果QStackedLayout为空,此函数被调用之前,给定的widget成为当前窗口小部件。

插入一个新的widget指数小于或等于当前的索引处将增加当前索引,但保持当前的窗口小部件。

See also addWidget( )removeWidget()和setCurrentWidget( ) 。

QLayoutItem QStackedLayout.itemAt (self, int)

从重新实现QLayout.itemAt( ) 。

QSize QStackedLayout.minimumSize (self)

从重新实现QLayoutItem.minimumSize( ) 。

QStackedLayout.setCurrentIndex (self, int index)

这种方法也是一个Qt槽与C + +的签名void setCurrentIndex(int)

QStackedLayout.setCurrentWidget (self, QWidget w)

这种方法也是一个Qt槽与C + +的签名void setCurrentWidget(QWidget *)

设置当前窗口小部件被指定widget。新的当前窗口小部件必须已经包含在这个堆叠布局。

See also setCurrentIndex()和currentWidget( ) 。

QStackedLayout.setGeometry (self, QRect rect)

从重新实现QLayoutItem.setGeometry( ) 。

QStackedLayout.setStackingMode (self, StackingMode stackingMode)

QSize QStackedLayout.sizeHint (self)

从重新实现QLayoutItem.sizeHint( ) 。

StackingMode QStackedLayout.stackingMode (self)

QLayoutItem QStackedLayout.takeAt (self, int)

QLayoutItem结果

从重新实现QLayout.takeAt( ) 。

QWidget QStackedLayout.widget (self, int)

返回该插件在给定的index或0 ,如果没有插件在给定的位置上。

See also currentWidget()和indexOf( ) 。

QWidget QStackedLayout.widget (self)


Qt Signal Documentation

void currentChanged (int)

这是该信号的默认超载。

这个信号被发射时的电流小部件在布局中的变化。该index指定新的当前部件的索引,或者-1,如果没有一个新的(例如,如果没有部件在QStackedLayout

See also currentWidget()和setCurrentWidget( ) 。

void widgetRemoved (int)

这是该信号的默认超载。

每当一个部件被从布局中删除这个信号被发射。 widget的index作为参数传递。

See also removeWidget( ) 。




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