Home | All Classes | Main Classes | Annotated | Grouped Classes | Functions |

# QGroupBox Class Reference

The QGroupBox widget provides a group box frame with a title. More...

`#include <qgroupbox.h>`

Inherits QFrame.

Inherited by QButtonGroup, QHGroupBox, and QVGroupBox.

List of all member functions.

## Public Members

- QGroupBox ( QWidget * parent = 0, const char * name = 0 )
- QGroupBox ( const QString & title, QWidget * parent = 0, const char * name = 0 )
- QGroupBox ( int strips, Orientation orientation, QWidget * parent = 0, const char * name = 0 )
- QGroupBox ( int strips, Orientation orientation, const QString & title, QWidget * parent = 0, const char * name = 0 )
- virtual void setColumnLayout ( int strips, Orientation direction )
- QString title () const
- virtual void setTitle ( const QString & )
- int alignment () const
- virtual void setAlignment ( int )
- int columns () const
- void setColumns ( int )
- Orientation orientation () const
- void setOrientation ( Orientation )
- int insideMargin () const
- int insideSpacing () const
- void setInsideMargin ( int m )
- void setInsideSpacing ( int s )
- void addSpace ( int size )
- bool isFlat () const
- void setFlat ( bool b )

## Properties

- Alignment alignment - the alignment of the group box title
- int columns - the number of columns or rows (depending on \l orientation) in the group box
- bool flat - whether the group box is painted flat or has a frame around it
- Orientation orientation - the current orientation of the group box
- QString title - the group box title text

## Detailed Description

The QGroupBox widget provides a group box frame with a title.

A group box provides a frame, a title and a keyboard shortcut, and displays various other widgets inside itself. The title is on top, the keyboard shortcut moves keyboard focus to one of the group box's child widgets, and the child widgets are arranged in an array inside the frame.

The simplest way to use it is to create a group box with the desired number of columns (or rows) and orientation, and then just create widgets with the group box as parent.

However, it is also possible to change the orientation() and number of columns() after construction, or to ignore all the automatic layout support and manage all that yourself. You can add 'empty' spaces to the group box with addSpace().

QGroupBox also lets you set the title() (normally set in the constructor) and the title's alignment().

You can change the spacing used by the group box with setInsideMargin() and setInsideSpacing(). To reduce space consumption, you can remove the right, left and bottom edges of the frame with setFlat().

See also QButtonGroup, Widget Appearance and Style, Layout Management, and Organizers.

## Member Function Documentation

### QGroupBox::QGroupBox ( QWidget * parent = 0, const char * name = 0 )

Constructs a group box widget with no title.

The parent and name arguments are passed to the QWidget constructor.

This constructor does not do automatic layout.

### QGroupBox::QGroupBox ( const QString & title, QWidget * parent = 0, const char * name = 0 )

Constructs a group box with the title title.

The parent and name arguments are passed to the QWidget constructor.

This constructor does not do automatic layout.

### QGroupBox::QGroupBox ( int strips, Orientation orientation, QWidget * parent = 0, const char * name = 0 )

Constructs a group box with no title. Child widgets will be arranged in strips rows or columns (depending on orientation).

The parent and name arguments are passed to the QWidget constructor.

### QGroupBox::QGroupBox ( int strips, Orientation orientation, const QString & title, QWidget * parent = 0, const char * name = 0 )

Constructs a group box titled title. Child widgets will be arranged in strips rows or columns (depending on orientation).

The parent and name arguments are passed to the QWidget constructor.

### void QGroupBox::addSpace ( int size )

Adds an empty cell at the next free position. If size is greater than 0, the empty cell has a fixed height or width. If the group box is oriented horizontally, the empty cell has a fixed height; if oriented vertically, it has a fixed width.

Use this method to separate the widgets in the group box or to skip the next free cell. For performance reasons, call this method after calling setColumnLayout() or by changing the QGroupBox::columns or QGroupBox::orientation properties. It is generally a good idea to call these methods first (if needed at all), and insert the widgets and spaces afterwards.

### int QGroupBox::alignment () const

Returns the alignment of the group box title. See the "alignment" property for details.

### int QGroupBox::columns () const

Returns the number of columns or rows (depending on orientation) in the group box. See the "columns" property for details.

### int QGroupBox::insideMargin () const

Returns the width of the blank spacing between the items in the group and the frame of the group.

Only applies if the group box has a defined orientation.

The default is about 11.

See also setInsideMargin() and orientation.

### int QGroupBox::insideSpacing () const

Returns the width of the blank spacing between each of the items in the group.

Only applies if the group box has a defined orientation.

The default is about 5.

See also setInsideSpacing() and orientation.

### bool QGroupBox::isFlat () const

Returns TRUE if the group box is painted flat or has a frame around it; otherwise returns FALSE. See the "flat" property for details.

### Orientation QGroupBox::orientation () const

Returns the current orientation of the group box. See the "orientation" property for details.

### void QGroupBox::setAlignment ( int )`[virtual]`

Sets the alignment of the group box title. See the "alignment" property for details.

### void QGroupBox::setColumnLayout ( int strips, Orientation direction )`[virtual]`

Changes the layout of the group box. This function is useful only in combination with the default constructor that does not take any layout information. This function will put all existing children in the new layout. It is not good Qt programming style to call this function after children have been inserted. Sets the number of columns or rows to be strips, depending on direction.

See also orientation and columns.

Example: chart/optionsform.cpp.

### void QGroupBox::setColumns ( int )

Sets the number of columns or rows (depending on orientation) in the group box. See the "columns" property for details.

### void QGroupBox::setFlat ( bool b )

Sets whether the group box is painted flat or has a frame around it to b. See the "flat" property for details.

### void QGroupBox::setInsideMargin ( int m )

Sets the the width of the blank spacing between each of the items in the group to m pixels.

See also insideSpacing().

### void QGroupBox::setInsideSpacing ( int s )

Sets the width of the blank spacing between each of the items in the group to s pixels.

### void QGroupBox::setOrientation ( Orientation )

Sets the current orientation of the group box. See the "orientation" property for details.

### void QGroupBox::setTitle ( const QString & )`[virtual]`

Sets the group box title text. See the "title" property for details.

### QString QGroupBox::title () const

Returns the group box title text. See the "title" property for details.

## Property Documentation

### Alignment alignment

This property holds the alignment of the group box title.

The title is always placed on the upper frame line; however, the horizontal alignment can be specified by the alignment parameter.

The alignment is one of the following flags:

- AlignAuto aligns the title accroding to the language, usually left.
- AlignLeft aligns the title text to the left.
- AlignRight aligns the title text to the right.
- AlignHCenter aligns the title text centered.

The default alignment is AlignAuto.

See also Qt::AlignmentFlags.

Set this property's value with setAlignment() and get this property's value with alignment().

### int columns

This property holds the number of columns or rows (depending on orientation) in the group box.

Usually it is not a good idea to set this property because it is slow (it does a complete layout). It is better to set the number of columns directly in the constructor.

Set this property's value with setColumns() and get this property's value with columns().

### bool flat

This property holds whether the group box is painted flat or has a frame around it.

By default a group box has a surrounding frame, with the title being placed on the upper frame line. In flat mode the right, left and bottom frame lines are omitted, and only the thin line at the top is drawn.

See also title.

Set this property's value with setFlat() and get this property's value with isFlat().

### Orientation orientation

This property holds the current orientation of the group box.

A horizontal group box arranges it's children in columns, while a vertical group box arranges them in rows. Thus, a horizontal group box with only one column will arrange the children vertically in that column.

Usually it is not a good idea to set this property because it is slow (it does a complete layout). It is better to set the orientation directly in the constructor.

Set this property's value with setOrientation() and get this property's value with orientation().

### QString title

This property holds the group box title text.

The group box title text will have a focus-change keyboard accelerator if the title contains &, followed by a letter.

          g->setTitle( "&User information" );

This produces "User information" with the U underlined; Alt+U moves the keyboard focus to the group box.

There is no default title text.

Set this property's value with setTitle() and get this property's value with title().

This file is part of the Qt toolkit. Copyright © 1995-2002 Trolltech. All Rights Reserved.