<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> <!-- /tmp/qt-3.0-reggie-28534/qt-x11-free-3.0.2/src/widgets/qtoolbar.cpp:214 --> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1"> <title>QToolBar Class</title> <style type="text/css"><!-- h3.fn,span.fn { margin-left: 1cm; text-indent: -1cm; } a:link { color: #004faf; text-decoration: none } a:visited { color: #672967; text-decoration: none } body { background: #ffffff; color: black; } --></style> </head> <body> <table border="0" cellpadding="0" cellspacing="0" width="100%"> <tr bgcolor="#E5E5E5"> <td valign=center> <a href="index.html"> <font color="#004faf">Home</font></a> | <a href="classes.html"> <font color="#004faf">All Classes</font></a> | <a href="mainclasses.html"> <font color="#004faf">Main Classes</font></a> | <a href="annotated.html"> <font color="#004faf">Annotated</font></a> | <a href="groups.html"> <font color="#004faf">Grouped Classes</font></a> | <a href="functions.html"> <font color="#004faf">Functions</font></a> </td> <td align="right" valign="center"><img src="logo32.png" align="right" width="64" height="32" border="0"></td></tr></table><h1 align=center>QToolBar Class Reference</h1> <p>The QToolBar class provides a movable panel containing widgets such as tool buttons. <a href="#details">More...</a> <p><tt>#include <<a href="qtoolbar-h.html">qtoolbar.h</a>></tt> <p>Inherits <a href="qdockwindow.html">QDockWindow</a>. <p><a href="qtoolbar-members.html">List of all member functions.</a> <h2>Public Members</h2> <ul> <li><div class=fn>QToolBar ( const QString & label, QMainWindow *, ToolBarDock = DockTop, bool newLine = FALSE, const char * name = 0 ) <em>(obsolete)</em></div></li> <li><div class=fn><a href="#QToolBar-2"><b>QToolBar</b></a> ( const QString & label, QMainWindow * mainWindow, QWidget * parent, bool newLine = FALSE, const char * name = 0, WFlags f = 0 )</div></li> <li><div class=fn><a href="#QToolBar-3"><b>QToolBar</b></a> ( QMainWindow * parent = 0, const char * name = 0 )</div></li> <li><div class=fn>void <a href="#addSeparator"><b>addSeparator</b></a> ()</div></li> <li><div class=fn>QMainWindow * <a href="#mainWindow"><b>mainWindow</b></a> () const</div></li> <li><div class=fn>virtual void <a href="#setStretchableWidget"><b>setStretchableWidget</b></a> ( QWidget * w )</div></li> <li><div class=fn>virtual void <a href="#setLabel"><b>setLabel</b></a> ( const QString & )</div></li> <li><div class=fn>QString <a href="#label"><b>label</b></a> () const</div></li> <li><div class=fn>virtual void <a href="#clear"><b>clear</b></a> ()</div></li> </ul> <h2>Properties</h2> <ul> <li><div class=fn>QString <a href="#label-prop"><b>label</b></a> - the label of the toolbar</div></li> </ul> <hr><a name="details"></a><h2>Detailed Description</h2> <p> The QToolBar class provides a movable panel containing widgets such as tool buttons. <p> <p> A toolbar is a panel that contains a set of controls, usually represented by small icons. It's purpose is to provide quick access to frequently used commands or options. Within a <a href="qmainwindow.html">QMainWindow</a> the user can drag toolbars within and between the dock areas. Toolbars can also be dragged out of any dock area to float freely as top level windows. <p> QToolBar is a specialization of <a href="qdockwindow.html">QDockWindow</a>, and so provides all the functionality of a QDockWindow. <p> To use QToolBar you simply create a QToolBar as a child of a QMainWindow, create a number of <a href="qtoolbutton.html">QToolButton</a> widgets (or other widgets) in left to right (or top to bottom) order and call <a href="#addSeparator">addSeparator</a>() when you want a separator. When a toolbar is floated the caption used is the label given in the constructor call. This can be changed with <a href="#setLabel">setLabel</a>(). <p> <pre> QToolBar * fileTools = new QToolBar( this, "file operations" ); fileTools-><a href="#setLabel">setLabel</a>( "File Operations" ); fileOpenAction-><a href="qaction.html#addTo">addTo</a>( fileTools ); fileSaveAction-><a href="qaction.html#addTo">addTo</a>( fileTools ); </pre> <p> This extract from the <a href="simple-application-example.html">application/application.cpp</a> example shows the creation of a new toolbar as a child of a <a href="qmainwindow.html">QMainWindow</a> and adding two QActions. <p> You may use most widgets within a toolbar, with QToolButton and <a href="qcombobox.html">QComboBox</a> being the most common. <p> Note that if you create a new widget on a already visible QToolBar, this widget becomes automatically visible without explicitly calling <a href="qwidget.html#show">show</a>() on it (unlike in all other widget containers in Qt). Please call explicitly show() on all widgets you put into an already visible QToolBar anyway, as this behavior might be fixed in the future. <p> QToolBars, like QDockWindows, are located in QDockAreas or float as top level windows. QMainWindow provides four QDockAreas (top, left, right and bottom). When you create a new toolbar (as in the example above) as a child of a QMainWindow the toolbar will be added to the top dock area. You can move it to another dock area (or float it) by calling <a href="qmainwindow.html#moveDockWindow">QMainWindow::moveDockWindow</a>(). QDock areas lay out their windows in <a href="qdockarea.html#lines">Lines</a>. <p> If the main window is resized so that the area occupied by the toolbar is too small to show all its widgets a little arrow button (which looks like a right-pointing chevron, '»') will appear at the right or bottom of the toolbar depending on its orientation. Clicking this button pops up a menu that shows the 'overflowing' items. <p> Usually a toolbar will get precisely the space it needs. However, with <a href="qdockwindow.html#setHorizontalStretchable">setHorizontalStretchable</a>(), <a href="qdockwindow.html#setVerticalStretchable">setVerticalStretchable</a>() or <a href="#setStretchableWidget">setStretchableWidget</a>() you can tell the main window to expand the toolbar to fill all available space in the specified orientation. <p> The toolbar arranges its buttons either horizontally or vertically (see <a href="qdockwindow.html#orientation">orientation</a>() for details). Generally, <a href="qdockarea.html">QDockArea</a> will set the orientation correctly for you, but you can set it yourself with <a href="qdockwindow.html#setOrientation">setOrientation</a>() and track any changes by connecting to the <a href="qdockwindow.html#orientationChanged">orientationChanged</a>() signal. <p> You can use the <a href="#clear">clear</a>() method to remove all items from a toolbar. <p> <center><img src="qdockwindow.png" alt="Toolbar (dock window)"></center> <blockquote><p align="center"><em> A floating QToolbar (dock window) </em></p> </blockquote><p> <p>See also <a href="qtoolbutton.html">QToolButton</a>, <a href="qmainwindow.html">QMainWindow</a>, <a href="http://www.iarchitect.com/visual.htm">Parts of Isys on Visual Design</a>, <a href="guibooks.html#fowler">GUI Design Handbook: Tool Bar</a> and <a href="application.html">Main Window and Related Classes</a>. <hr><h2>Member Function Documentation</h2> <h3 class=fn><a name="QToolBar"></a>QToolBar::QToolBar ( const <a href="qstring.html">QString</a> & label, <a href="qmainwindow.html">QMainWindow</a> *, ToolBarDock = DockTop, bool newLine = FALSE, const char * name = 0 ) </h3> <b>This function is obsolete.</b> It is provided to keep old source working. We strongly advise against using it in new code. <p> <h3 class=fn><a name="QToolBar-2"></a>QToolBar::QToolBar ( const <a href="qstring.html">QString</a> & label, <a href="qmainwindow.html">QMainWindow</a> * mainWindow, <a href="qwidget.html">QWidget</a> * parent, bool newLine = FALSE, const char * name = 0, WFlags f = 0 ) </h3> This is an overloaded member function, provided for convenience. It behaves essentially like the above function. <p> Constructs an empty horizontal toolbar. <p> The toolbar is a child of <em>parent</em> and is managed by <em>mainWindow</em>. The <em>label</em> and <em>newLine</em> parameters are passed straight to <a href="qmainwindow.html#addDockWindow">QMainWindow::addDockWindow</a>(). <em>name</em> is the object name and <em>f</em> is the <a href="qt.html#WidgetFlags">widget flags</a>. <p> Use this constructor if you want to create torn-off (undocked, floating) toolbars or toolbars in the status bar. <h3 class=fn><a name="QToolBar-3"></a>QToolBar::QToolBar ( <a href="qmainwindow.html">QMainWindow</a> * parent = 0, const char * name = 0 ) </h3> This is an overloaded member function, provided for convenience. It behaves essentially like the above function. <p> Constructs an empty toolbar, with parent <em>parent</em> and name <em>name</em>, in its <em>parent</em>'s top dock area, without any label and without requiring a newline. <h3 class=fn>void <a name="addSeparator"></a>QToolBar::addSeparator () </h3> Adds a separator to the right/bottom of the toolbar. <p>Examples: <a href="fileiconview-example.html#x1607">fileiconview/mainwindow.cpp</a>, <a href="helpviewer-example.html#x1441">helpviewer/helpwindow.cpp</a>, <a href="qfd-example.html#x756">qfd/fontdisplayer.cpp</a> and <a href="scribble-example.html#x558">scribble/scribble.cpp</a>. <h3 class=fn>void <a name="clear"></a>QToolBar::clear ()<tt> [virtual]</tt> </h3> Deletes all the toolbar's child widgets. <h3 class=fn><a href="qstring.html">QString</a> <a name="label"></a>QToolBar::label () const </h3><p>Returns the label of the toolbar. See the <a href="qtoolbar.html#label-prop">"label"</a> property for details. <h3 class=fn><a href="qmainwindow.html">QMainWindow</a> * <a name="mainWindow"></a>QToolBar::mainWindow () const </h3> Returns a pointer to the <a href="qmainwindow.html">QMainWindow</a> which manages this toolbar. <h3 class=fn>void <a name="setLabel"></a>QToolBar::setLabel ( const <a href="qstring.html">QString</a> & )<tt> [virtual]</tt> </h3><p>Sets the label of the toolbar. See the <a href="qtoolbar.html#label-prop">"label"</a> property for details. <h3 class=fn>void <a name="setStretchableWidget"></a>QToolBar::setStretchableWidget ( <a href="qwidget.html">QWidget</a> * w )<tt> [virtual]</tt> </h3> Sets the widget <em>w</em> to be expanded if this toolbar is requested to stretch. <p> The request to stretch might occur because <a href="qmainwindow.html">QMainWindow</a> right-justifies the dock it's in, or because this toolbar's <a href="qdockwindow.html#isVerticalStretchable">isVerticalStretchable</a>() or <a href="qdockwindow.html#isHorizontalStretchable">isHorizontalStretchable</a>() is set to TRUE. <p> If you call this function and the toolbar is not yet stretchable, setStretchable() is called. <p> <p>See also <a href="qmainwindow.html#rightJustification-prop">QMainWindow::rightJustification</a>, <a href="qdockwindow.html#setVerticalStretchable">setVerticalStretchable</a>() and <a href="qdockwindow.html#setHorizontalStretchable">setHorizontalStretchable</a>(). <p>Examples: <a href="fileiconview-example.html#x1608">fileiconview/mainwindow.cpp</a> and <a href="helpviewer-example.html#x1442">helpviewer/helpwindow.cpp</a>. <hr><h2>Property Documentation</h2> <h3 class=fn><a href="qstring.html">QString</a> <a name="label-prop"></a>label</h3> <p>This property holds the label of the toolbar. <p>If the toolbar is floated the label becomes the toolbar window's caption. There is no default label text. <p>Set this property's value with <a href="#setLabel">setLabel</a>() and get this property's value with <a href="#label">label</a>(). <!-- eof --> <hr><p> This file is part of the <a href="index.html">Qt toolkit</a>. Copyright © 1995-2001 <a href="http://www.trolltech.com/">Trolltech</a>. All Rights Reserved.<p><address><hr><div align=center> <table width=100% cellspacing=0 border=0><tr> <td>Copyright © 2001 <a href="http://www.trolltech.com">Trolltech</a><td><a href="http://www.trolltech.com/trademarks.html">Trademarks</a> <td align=right><div align=right>Qt version 3.0.2</div> </table></div></address></body> </html>