QTabWidget Class Reference
The QTabWidget class provides a stack of tabbed widgets.
More...
#include <qtabwidget.h>
Inherits QWidget.
List of all member functions.
Public Members
QTabWidget ( QWidget * parent, const char * name, WFlags f )Â
QTabWidget ( QWidget * parent=0, const char * name=0 )Â
-
voidÂ
addTab ( QWidget *, const QString & )Â
voidÂ
addTab ( QWidget * child, const QIconSet & iconset, const QString & label )Â
voidÂ
addTab ( QWidget *, QTab * )Â
voidÂ
insertTab ( QWidget *, const QString &, int index = -1 )Â
voidÂ
insertTab ( QWidget * child, const QIconSet & iconset, const QString & label, int index = -1 )Â
voidÂ
insertTab ( QWidget *, QTab *, int index = -1 )Â
voidÂ
changeTab ( QWidget *, const QString & )Â
voidÂ
changeTab ( QWidget * child, const QIconSet & iconset, const QString & label )Â
-
-
-
-
-
-
-
-
-
-
-
-
enumÂ
TabShape { Rounded, Triangular }
-
-
-
-
Signals
Protected Members
Properties
Type | Name | READ | WRITE | Options
|
---|
TabPosition | tabPosition | tabPosition | setTabPosition |
|
TabShape | tabShape | tabShape | setTabShape |
|
int | margin | margin | setMargin |
|
int | currentPage | currentPageIndex | setCurrentPage |
|
Detailed Description
The QTabWidget class provides a stack of tabbed widgets.
A tabbed widget is one in which several "pages" are available, and
the user selects which page to see and use by clicking on its tab,
or by pressing the indicated Alt-(letter) key combination.
QTabWidget does not provide more than one row of tabs, and does not
provide tabs along the sides or bottom of the pages.
The normal way to use QTabWidget is to do the following in the
constructor:
- Create a QTabWidget.
- Create a QWidget
for each of the pages in the tab dialog, insert children into it,
set up geometry management for it, and use addTab() to set up a tab
and keyboard accelerator for it.
- Connect to the
signals and slots.
If you don't call addTab(), the page you have created will not be
visible. Please don't confuse the object name you supply to the
QWidget constructor and the tab label you supply to addTab():
addTab() takes a name which indicates an accelerator and is
meaningful and descriptive to the user, while the widget name is
used primarily for debugging.
A signal currentChanged() is emitted when the user selects some
page.
Each tab is either enabled or disabled at any given time. If a tab
is enabled, the tab text is drawn in black and the user can select
that tab. If it is disabled, the tab is drawn in a different way
and the user can not select that tab. Note that even though a tab
is disabled, the page can still be visible, for example if all of
the tabs happen to be disabled.
While tab widgets can be a very good way to split up a complex
dialog, it's also very easy to make a royal mess out of it. See
QTabDialog for some design hints.
Most of the functionality in QTabWidget is provided by a QTabBar (at
the top, providing the tabs) and a QWidgetStack (most of the area,
organizing the individual pages).
See also QTabDialog.
Member Type Documentation
This enum type defines where QTabWidget can draw the tab row:
-
Top
- above the pages
-
Bottom
- below the pages
This enum type defines the shape of the tabs:
-
Rounded
- rounded look (normal)
-
Triangular
- triangular look (very unusual, included for completeness)
Member Function Documentation
QTabWidget::QTabWidget ( QWidget * parent, const char * name, WFlags f )
Constructs a tabbed widget with parent parent, name name
and widget flags f.
QTabWidget::QTabWidget ( QWidget * parent=0, const char * name=0 )
This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.
QTabWidget::~QTabWidget ()
Destructs the tab widget.
void QTabWidget::addTab ( QWidget * child, QTab * tab )
This is a lower-level method for adding tabs, similar to the other
addTab() method. It is useful if you are using setTabBar() to set a
QTabBar subclass with an overridden QTabBar::paint() routine for a
subclass of QTab.
void QTabWidget::addTab ( QWidget * child, const QIconSet & iconset, const QString & label )
Adds another tab and page to the tab view.
This function is the same as addTab() but with an additional
iconset.
void QTabWidget::addTab ( QWidget * child, const QString & label )
Adds another tab and page to the tab view.
The tab will be labelled label and child constitutes the new
page. Note the difference between the widget name (which you supply
to widget constructors and to e.g. setTabEnabled()) and the tab
label: The name is internal to the program and invariant, while the
label is shown on screen and may vary according to e.g. language.
label is written in the QButton style, where &P makes Qt create
an accelerator key on Alt-P for this page. For example:
td->addTab( graphicsPane, "&Graphics" );
td->addTab( soundPane, "&Sound" );
If the user presses Alt-S the sound page of the tab dialog is shown,
if the user presses Alt-P the graphics page is shown.
If you call addTab() after show(), the screen will flicker and the
user will be confused.
void QTabWidget::changeTab ( QWidget * w, const QIconSet & iconset, const QString & label )
Defines a new iconset and a new label for the tab of page w
void QTabWidget::changeTab ( QWidget * w, const QString & label )
Defines a new label for the tab of page w
void QTabWidget::currentChanged ( QWidget * ) [signal]
This signal is emitted whenever the current page changes.
See also currentPage(), showPage() and tabLabel().
QWidget * QTabWidget::currentPage () const
Returns a pointer to the page currently being displayed by the
tab dialog. The tab dialog does its best to make sure that this value
is never 0, but if you try hard enough it can be.
int QTabWidget::currentPageIndex () const
Returns the ID of the current page.
bool QTabWidget::eventFilter ( QObject * o, QEvent * e ) [virtual protected]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QObject.
void QTabWidget::insertTab ( QWidget * child, QTab * tab, int index = -1 )
This is a lower-level method for inserting tabs, similar to the other
insertTab() method. It is useful if you are using setTabBar() to set a
QTabBar subclass with an overridden QTabBar::paint() routine for a
subclass of QTab.
void QTabWidget::insertTab ( QWidget * child, const QIconSet & iconset, const QString & label, int index = -1 )
Inserts another tab and page to the tab view.
This function is the same as insertTab() but with an additional
iconset.
void QTabWidget::insertTab ( QWidget * child, const QString & label, int index = -1 )
Inserts another tab and page to the tab view.
The tab will be labelled label and child constitutes the new
page. Note the difference between the widget name (which you supply
to widget constructors and to e.g. setTabEnabled()) and the tab
label: The name is internal to the program and invariant, while the
label is shown on screen and may vary according to e.g. language.
label is written in the QButton style, where &P makes Qt create
an accelerator key on Alt-P for this page. For example:
td->insertTab( graphicsPane, "&Graphics" );
td->insertTab( soundPane, "&Sound" );
If index is not specified, the tab is simply added. Otherwise
it's inserted at the specified position.
If the user presses Alt-S the sound page of the tab dialog is shown,
if the user presses Alt-P the graphics page is shown.
If you call insertTab() after show(), the screen will flicker and the
user will be confused.
bool QTabWidget::isTabEnabled ( QWidget * w ) const
Returns TRUE if the page w is enabled, and
false if it is disabled.
See also setTabEnabled() and QWidget::isEnabled().
int QTabWidget::margin () const
Returns the width of the margin. The margin is the distance between
the innermost pixel of the frame and the outermost pixel of the
pages.
See also setMargin().
QSize QTabWidget::minimumSizeHint () const [virtual]
Returns a suitable minimum size for the tab widget.
Reimplemented from QWidget.
void QTabWidget::removePage ( QWidget * w )
Removes page w from this stack of widgets. Does not
delete w.
See also showPage() and QWidgetStack::removeWidget().
void QTabWidget::resizeEvent ( QResizeEvent * ) [virtual protected]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QWidget.
void QTabWidget::setCurrentPage ( int id )
Sets the page with index id as current page.
Note that id is not the index that is specified when you insert a tab.
void QTabWidget::setMargin ( int w )
Sets the width of the margin to w.
See also margin().
void QTabWidget::setTabBar ( QTabBar * tb ) [protected]
Replaces the QTabBar heading the dialog by the given tab bar.
Note that this must be called before any tabs have been added,
or the behavior is undefined.
See also tabBar().
void QTabWidget::setTabEnabled ( QWidget * w, bool enable )
Enables/disables page w according to the value of enable, and
redraws the page's tab appropriately.
QTabWidget uses QWidget::setEnabled() internally, rather than keep a
separate flag.
Note that even a disabled tab/page may be visible. If the page is
visible already, QTabWidget will not hide it, and if all the pages
are disabled, QTabWidget will show one of them.
See also isTabEnabled() and QWidget::setEnabled().
void QTabWidget::setTabPosition ( TabPosition pos )
Sets the position of the tabs to pos
Possible values are QTabWidget::Top and QTabWidget::Bottom.
See also tabPosition().
void QTabWidget::setTabShape ( TabShape s )
Sets the shape of the tabs to s.
void QTabWidget::showEvent ( QShowEvent * ) [virtual protected]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QWidget.
void QTabWidget::showPage ( QWidget * w )
Ensures that w is shown. This is useful mainly for accelerators.
Warning: Used carelessly, this function can easily surprise or
confuse the user.
See also QTabBar::setCurrentTab().
QSize QTabWidget::sizeHint () const [virtual]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QWidget.
QSizePolicy QTabWidget::sizePolicy () const [virtual]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QWidget.
void QTabWidget::styleChange ( QStyle & old ) [virtual protected]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QWidget.
QTabBar* QTabWidget::tabBar () const [protected]
Returns the currently set QTabBar.
See also setTabBar().
QString QTabWidget::tabLabel ( QWidget * w )
Returns the text in the tab for page w.
QTabWidget::TabPosition QTabWidget::tabPosition() const
Returns the position of the tabs.
Possible values are QTabWidget::Top and QTabWidget::Bottom.
See also setTabPosition().
QTabWidget::TabShape QTabWidget::tabShape() const
Returns the shape of the tabs.
See also setTabShape().
void QTabWidget::updateMask () [virtual protected]
Reimplemented for internal reasons; the API is not affected.
Reimplemented from QWidget.
Search the documentation, FAQ, qt-interest archive and more (uses
www.trolltech.com):
This file is part of the Qt toolkit,
copyright © 1995-2005
Trolltech, all rights reserved.