Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD

## com.trolltech.qt.gui
Class QStackedWidget

    java.lang.Object
      com.trolltech.qt.internal.QSignalEmitterInternal
          com.trolltech.qt.QSignalEmitter
              com.trolltech.qt.QtJambiObject
                  com.trolltech.qt.core.QObject
                      com.trolltech.qt.gui.QWidget
                          com.trolltech.qt.gui.QFrame
                              com.trolltech.qt.gui.QStackedWidget

All Implemented Interfaces:
  QPaintDeviceInterface, QtJambiInterface

    public class QStackedWidget

extends QFrame

The `QStackedWidget` class provides a stack of widgets where only one widget is visible at a time. `QStackedWidget` can be used to create a user interface similar to the one provided by `QTabWidget`. It is a convenience layout widget built on top of the `QStackedLayout` class.

Like `QStackedLayout`, `QStackedWidget` can be constructed and populated with a number of child widgets ("pages"):

            QWidget firstPageWidget = new QWidget();
            QWidget secondPageWidget = new QWidget();
            QWidget thirdPageWidget = new QWidget();

            QStackedWidget stackedWidget = new QStackedWidget();
            stackedWidget.addWidget(firstPageWidget);
            stackedWidget.addWidget(secondPageWidget);
            stackedWidget.addWidget(thirdPageWidget);

            QVBoxLayout layout = new QVBoxLayout();

            layout.addWidget(stackedWidget);
            setLayout(layout);

`QStackedWidget` provides no intrinsic means for the user to switch page. This is typically done through a `QComboBox` or a `QListWidget` that stores the titles of the `QStackedWidget`'s pages. For example:

            QComboBox pageComboBox = new QComboBox();
            pageComboBox.addItem(tr("Page 1"));
            pageComboBox.addItem(tr("Page 2"));
            pageComboBox.addItem(tr("Page 3"));
            pageComboBox.activated.connect(stackedWidget, "setCurrentIndex(int)");

When populating a stacked widget, the widgets are added to an internal list. The `indexOf()` function returns the index of a widget in that list. The widgets can either be added to the end of the list using the `addWidget()` function, or inserted at a given index using the `insertWidget()` function. The `removeWidget()` function removes the widget at the given index from the stacked widget. The number of widgets contained in the stacked widget, can be obtained using the `count()` function.

The `widget()` function returns the widget at a given index position. The index of the widget that is shown on screen is given by `currentIndex()` and can be changed using `setCurrentIndex()`. In a similar manner, the currently shown widget can be retrieved using the `currentWidget()` function, and altered using the `setCurrentWidget()` function.

Whenever the current widget in the stacked widget changes or a widget is removed from the stacked widget, the `currentChanged()` and `widgetRemoved()` signals are emitted respectively.

See also:
  `QStackedLayout`, `QTabWidget`, and Config Dialog Example.

Nested Class Summary

Nested classes/interfaces inherited from class com.trolltech.qt.gui.QFrame
`QFrame.Shadow, QFrame.Shape, QFrame.StyleMask`

Nested classes/interfaces inherited from class com.trolltech.qt.gui.QWidget
`QWidget.RenderFlag, QWidget.RenderFlags`

Nested classes/interfaces inherited from class com.trolltech.qt.QSignalEmitter
`QSignalEmitter.AbstractSignal, QSignalEmitter.Signal0, QSignalEmitter.Signal1, QSignalEmitter.Signal2, QSignalEmitter.Signal3, QSignalEmitter.Signal4, QSignalEmitter.Signal5, QSignalEmitter.Signal6, QSignalEmitter.Signal7, QSignalEmitter.Signal8, QSignalEmitter.Signal9`

Nested classes/interfaces inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
`com.trolltech.qt.internal.QSignalEmitterInternal.AbstractSignalInternal`

Field Summary
`QSignalEmitter.Signal1` | `currentChanged` This signal takes 1 generic argument(s).
`QSignalEmitter.Signal1` | `widgetRemoved` This signal takes 1 generic argument(s).

Fields inherited from class com.trolltech.qt.gui.QWidget
`customContextMenuRequested`

Fields inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
`currentSender`

Constructor Summary
`QStackedWidget()` Constructs a `QStackedWidget` with the given `parent`.
`QStackedWidget(QWidget parent)` Constructs a `QStackedWidget` with the given `parent`.

Method Summary
`int` | `addWidget(QWidget w)` Appends the given `widget` to the `QStackedWidget` and returns the index position.
`int` | `count()` This property holds the number of widgets contained by this stacked widget.
`int` | `currentIndex()` This property holds the index position of the widget that is visible.
`QWidget` | `currentWidget()` Returns the current widget, or 0 if there are no child widgets.
`int` | `indexOf(QWidget arg__1)` Returns the index of the given `widget`, or -1 if the given `widget` is not a child of the `QStackedWidget`.
`int` | `insertWidget(int index, QWidget w)` Inserts the given `widget` at the given `index` in the `QStackedWidget`.
`void` | `removeWidget(QWidget w)` Removes the given `widget` from the `QStackedWidget`.
`void` | `setCurrentIndex(int index)` This property holds the index position of the widget that is visible.
`void` | `setCurrentWidget(QWidget w)` Sets the current widget to be the specified `widget`.
`QWidget` | `widget(int arg__1)` Returns the widget at the given `index`, or 0 if there is no such widget.

Methods inherited from class com.trolltech.qt.gui.QFrame
`frameRect, frameShadow, frameShape, frameStyle, frameWidth, lineWidth, midLineWidth, setFrameRect, setFrameShadow, setFrameShape, setFrameStyle, setLineWidth, setMidLineWidth`

Methods inherited from class com.trolltech.qt.gui.QWidget
`acceptDrops, accessibleDescription, accessibleName, actionEvent, actions, activateWindow, addAction, addActions, adjustSize, autoFillBackground, backgroundRole, baseSize, changeEvent, childAt, childAt, childrenRect, childrenRegion, clearFocus, clearMask, close, closeEvent, contentsRect, contextMenuEvent, contextMenuPolicy, cursor, depth, destroy, destroy, destroy, dragEnterEvent, dragLeaveEvent, dragMoveEvent, dropEvent, effectiveWinId, ensurePolished, enterEvent, focusInEvent, focusNextChild, focusNextPrevChild, focusOutEvent, focusPolicy, focusPreviousChild, focusProxy, focusWidget, font, fontInfo, fontMetrics, foregroundRole, frameGeometry, frameSize, geometry, getContentsMargins, grabKeyboard, grabMouse, grabMouse, grabShortcut, grabShortcut, hasFocus, hasMouseTracking, height, heightForWidth, heightMM, hide, hideEvent, inputContext, inputMethodEvent, inputMethodQuery, insertAction, insertActions, isActiveWindow, isAncestorOf, isEnabled, isEnabledTo, isFullScreen, isHidden, isMaximized, isMinimized, isModal, isVisible, isVisibleTo, isWindow, isWindowModified, keyboardGrabber, keyPressEvent, keyReleaseEvent, languageChange, layout, layoutDirection, leaveEvent, locale, logicalDpiX, logicalDpiY, lower, mapFrom, mapFromGlobal, mapFromParent, mapTo, mapToGlobal, mapToParent, mask, maximumHeight, maximumSize, maximumWidth, metric, minimumHeight, minimumSize, minimumSizeHint, minimumWidth, mouseDoubleClickEvent, mouseGrabber, mouseMoveEvent, mousePressEvent, mouseReleaseEvent, move, move, moveEvent, nativeParentWidget, nextInFocusChain, normalGeometry, numColors, overrideWindowFlags, overrideWindowFlags, paintEngine, paintEvent, paintingActive, palette, parentWidget, physicalDpiX, physicalDpiY, pos, raise, rect, releaseKeyboard, releaseMouse, releaseShortcut, removeAction, render, render, render, render, render, render, render, render, render, repaint, repaint, repaint, repaint, resetInputContext, resize, resize, resizeEvent, restoreGeometry, saveGeometry, scroll, scroll, setAcceptDrops, setAccessibleDescription, setAccessibleName, setAttribute, setAttribute, setAutoFillBackground, setBackgroundRole, setBaseSize, setBaseSize, setContentsMargins, setContentsMargins, setContextMenuPolicy, setCursor, setDisabled, setEnabled, setFixedHeight, setFixedSize, setFixedSize, setFixedWidth, setFocus, setFocus, setFocusPolicy, setFocusProxy, setFont, setForegroundRole, setGeometry, setGeometry, setHidden, setInputContext, setLayout, setLayoutDirection, setLocale, setMask, setMask, setMaximumHeight, setMaximumSize, setMaximumSize, setMaximumWidth, setMinimumHeight, setMinimumSize, setMinimumSize, setMinimumWidth, setMouseTracking, setPalette, setParent, setParent, setParent, setShortcutAutoRepeat, setShortcutAutoRepeat, setShortcutEnabled, setShortcutEnabled, setSizeIncrement, setSizeIncrement, setSizePolicy, setSizePolicy, setStatusTip, setStyle, setStyleSheet, setTabOrder, setToolTip, setUpdatesEnabled, setVisible, setWhatsThis, setWindowFilePath, setWindowFlags, setWindowFlags, setWindowIcon, setWindowIconText, setWindowModality, setWindowModified, setWindowOpacity, setWindowRole, setWindowState, setWindowState, setWindowTitle, show, showEvent, showFullScreen, showMaximized, showMinimized, showNormal, size, sizeHint, sizeIncrement, sizePolicy, stackUnder, statusTip, style, styleSheet, tabletEvent, testAttribute, toolTip, underMouse, unsetCursor, unsetLayoutDirection, unsetLocale, update, update, update, update, updateGeometry, updateMicroFocus, updatesEnabled, visibleRegion, whatsThis, wheelEvent, width, widthMM, window, windowFilePath, windowFlags, windowIcon, windowIconText, windowModality, windowOpacity, windowRole, windowState, windowTitle, windowType, winId, x, y`

Methods inherited from class com.trolltech.qt.core.QObject
`childEvent, children, connectSlotsByName, customEvent, disposeLater, dumpObjectInfo, dumpObjectTree, dynamicPropertyNames, event, eventFilter, findChild, findChild, findChild, findChildren, findChildren, findChildren, findChildren, indexOfProperty, installEventFilter, isWidgetType, killTimer, moveToThread, objectName, parent, properties, property, removeEventFilter, setObjectName, setParent, setProperty, startTimer, timerEvent, toString, userProperty`

Methods inherited from class com.trolltech.qt.QtJambiObject
`dispose, disposed, equals, finalize, reassignNativeResources, tr, tr, tr`

Methods inherited from class com.trolltech.qt.QSignalEmitter
`blockSignals, disconnect, disconnect, signalsBlocked, signalSender, thread`

Methods inherited from class com.trolltech.qt.internal.QSignalEmitterInternal
`__qt_signalInitialization`

Methods inherited from class java.lang.Object
`clone, getClass, hashCode, notify, notifyAll, wait, wait, wait`

Methods inherited from interface com.trolltech.qt.QtJambiInterface
`disableGarbageCollection, nativeId, nativePointer, reenableGarbageCollection, setJavaOwnership`

Field Detail

### currentChanged

    public final QSignalEmitter.Signal1 currentChanged

  This signal takes 1 generic argument(s). We list their type and the name they go by in the description of this signal. <java.lang.Integer(named: index)>:

  This signal is emitted whenever the current widget changes.

  The parameter holds the `index` of the new current widget, or -1 if there isn't a new one (for example, if there are no widgets in the `QStackedWidget`).

See also:
  `currentWidget()`, and `setCurrentWidget()`.

### widgetRemoved

    public final QSignalEmitter.Signal1 widgetRemoved

  This signal takes 1 generic argument(s). We list their type and the name they go by in the description of this signal. <java.lang.Integer(named: index)>:

  This signal is emitted whenever a widget is removed. The widget's `index` is passed as parameter.

See also:
  `removeWidget()`.

Constructor Detail

### QStackedWidget

    public QStackedWidget()

  Constructs a `QStackedWidget` with the given `parent`.

See also:
  `addWidget()`, and `insertWidget()`.

### QStackedWidget

    public QStackedWidget(QWidget parent)

  Constructs a `QStackedWidget` with the given `parent`.

See also:
  `addWidget()`, and `insertWidget()`.

Method Detail

### addWidget

    public final int addWidget(QWidget w)

  Appends the given `widget` to the `QStackedWidget` and returns the index position. Ownership of `widget` is passed on to the `QStackedWidget`.

  If the `QStackedWidget` is empty before this function is called, `widget` becomes the current widget.

See also:
  `insertWidget()`, `removeWidget()`, and `setCurrentWidget()`.

### count

    public final int count()

  This property holds the number of widgets contained by this stacked widget. By default, this property contains a value of 0.

See also:
  `currentIndex()`, and `widget()`.

### currentIndex

    public final int currentIndex()

  This property holds the index position of the widget that is visible. The current index is -1 if there is no current widget.

  By default, this property contains a value of -1 because the stack is initially empty.

See also:
  `currentWidget()`, and `indexOf()`.

### currentWidget

    public final QWidget currentWidget()

  Returns the current widget, or 0 if there are no child widgets.

See also:
  `currentIndex()`, and `setCurrentWidget()`.

### indexOf

    public final int indexOf(QWidget arg__1)

  Returns the index of the given `widget`, or -1 if the given `widget` is not a child of the `QStackedWidget`.

See also:
  `currentIndex()`, and `widget()`.

### insertWidget

    public final int insertWidget(int index,
                                  QWidget w)

  Inserts the given `widget` at the given `index` in the `QStackedWidget`. Ownership of `widget` is passed on to the `QStackedWidget`. If `index` is out of range, the `widget` is appended (in which case it is the actual index of the `widget` that is returned).

  If the `QStackedWidget` was empty before this function is called, the given `widget` becomes the current widget.

  Inserting a new widget at an index less than or equal to the current index will increment the current index, but keep the current widget.

See also:
  `addWidget()`, `removeWidget()`, and `setCurrentWidget()`.

### removeWidget

    public final void removeWidget(QWidget w)

  Removes the given `widget` from the `QStackedWidget`. The widget is not deleted.

See also:
  `addWidget()`, `insertWidget()`, and `currentWidget()`.

### setCurrentIndex

    public final void setCurrentIndex(int index)

  This property holds the index position of the widget that is visible. The current index is -1 if there is no current widget.

  By default, this property contains a value of -1 because the stack is initially empty.

See also:
  `currentWidget()`, and `indexOf()`.

### setCurrentWidget

    public final void setCurrentWidget(QWidget w)

  Sets the current widget to be the specified `widget`. The new current widget must already be contained in this stacked widget.

See also:
  `currentWidget()`, and `setCurrentIndex()`.

### widget

    public final QWidget widget(int arg__1)

  Returns the widget at the given `index`, or 0 if there is no such widget.

See also:
  `currentWidget()`, and `indexOf()`.

Overview | Package | Class | Tree | Deprecated | Index | Help
PREV CLASS NEXT CLASS | FRAMES NO FRAMES
SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD