|  | Home · All Classes · Modules

# QGraphicsGridLayout Class Reference
[QtGui module]

The QGraphicsGridLayout class provides a grid layout for managing widgets in Graphics View. More...

Inherits QGraphicsLayout.

### Methods

- __init__ (self, QGraphicsLayoutItem parent = None)
- addItem (self, QGraphicsLayoutItem item, int row, int column, int rowSpan, int columnSpan, Qt.Alignment alignment = 0)
- addItem (self, QGraphicsLayoutItem aitem, int arow, int acolumn, Qt.Alignment alignment = 0)
- Qt.Alignment alignment (self, QGraphicsLayoutItem item)
- Qt.Alignment columnAlignment (self, int column)
- int columnCount (self)
- float columnMaximumWidth (self, int column)
- float columnMinimumWidth (self, int column)
- float columnPreferredWidth (self, int column)
- float columnSpacing (self, int column)
- int columnStretchFactor (self, int column)
- int count (self)
- float horizontalSpacing (self)
- invalidate (self)
- QGraphicsLayoutItem itemAt (self, int row, int column)
- QGraphicsLayoutItem itemAt (self, int index)
- removeAt (self, int index)
- removeItem (self, QGraphicsLayoutItem item)
- Qt.Alignment rowAlignment (self, int row)
- int rowCount (self)
- float rowMaximumHeight (self, int row)
- float rowMinimumHeight (self, int row)
- float rowPreferredHeight (self, int row)
- float rowSpacing (self, int row)
- int rowStretchFactor (self, int row)
- setAlignment (self, QGraphicsLayoutItem item, Qt.Alignment alignment)
- setColumnAlignment (self, int column, Qt.Alignment alignment)
- setColumnFixedWidth (self, int column, float width)
- setColumnMaximumWidth (self, int column, float width)
- setColumnMinimumWidth (self, int column, float width)
- setColumnPreferredWidth (self, int column, float width)
- setColumnSpacing (self, int column, float spacing)
- setColumnStretchFactor (self, int column, int stretch)
- setGeometry (self, QRectF rect)
- setHorizontalSpacing (self, float spacing)
- setRowAlignment (self, int row, Qt.Alignment alignment)
- setRowFixedHeight (self, int row, float height)
- setRowMaximumHeight (self, int row, float height)
- setRowMinimumHeight (self, int row, float height)
- setRowPreferredHeight (self, int row, float height)
- setRowSpacing (self, int row, float spacing)
- setRowStretchFactor (self, int row, int stretch)
- setSpacing (self, float spacing)
- setVerticalSpacing (self, float spacing)
- QSizeF sizeHint (self, Qt.SizeHint which, QSizeF constraint = QSizeF())
- float verticalSpacing (self)

## Detailed Description

The QGraphicsGridLayout class provides a grid layout for managing widgets in Graphics View.

The most common way to use QGraphicsGridLayout is to construct an object on the heap with no parent, add widgets and layouts by calling addItem(), and finally assign the layout to a widget by calling QGraphicsWidget.setLayout(). QGraphicsGridLayout automatically computes the dimensions of the grid as you add items.

     QGraphicsScene scene;
     QGraphicsWidget *textEdit = scene.addWidget(new QTextEdit);
     QGraphicsWidget *pushButton = scene.addWidget(new QPushButton);

     QGraphicsGridLayout *layout = new QGraphicsGridLayout;
     layout->addItem(textEdit, 0, 0);
     layout->addItem(pushButton, 0, 1);

     QGraphicsWidget *form = new QGraphicsWidget;
     form->setLayout(layout);
     scene.addItem(form);

The layout takes ownership of the items. In some cases when the layout item also inherits from QGraphicsItem (such as QGraphicsWidget) there will be a ambiguity in ownership because the layout item belongs to two ownership hierarchies. See the documentation of QGraphicsLayoutItem.setOwnedByLayout() how to handle this. You can access each item in the layout by calling count() and itemAt(). Calling removeAt() will remove an item from the layout, without destroying it.

### Size Hints and Size Policies in QGraphicsGridLayout

QGraphicsGridLayout respects each item's size hints and size policies, and when a cell in the grid has more space than the items can fill, each item is arranged according to the layout's alignment for that item. You can set an alignment for each item by calling setAlignment(), and check the alignment for any item by calling alignment(). You can also set the alignment for an entire row or column by calling setRowAlignment() and setColumnAlignment() respectively. By default, items are aligned to the top left.

## Method Documentation

### QGraphicsGridLayout.__init__ (self, QGraphicsLayoutItem parent = None)

The parent argument, if not None, causes self to be owned by Qt instead of PyQt.

Constructs a QGraphicsGridLayout instance. parent is passed to QGraphicsLayout's constructor.

### QGraphicsGridLayout.addItem (self, QGraphicsLayoutItem item, int row, int column, int rowSpan, int columnSpan, Qt.Alignment alignment = 0)

The item argument has it's ownership transferred to Qt.

Adds item to the grid on row and column. You can specify a rowSpan and columnSpan and an optional alignment.

### QGraphicsGridLayout.addItem (self, QGraphicsLayoutItem aitem, int arow, int acolumn, Qt.Alignment alignment = 0)

The aitem argument, if not None, causes self to be owned by Qt instead of PyQt.

Adds item to the grid on row and column. You can specify an optional alignment for item.

### Qt.Alignment QGraphicsGridLayout.alignment (self, QGraphicsLayoutItem item)

Returns the alignment for item.

See also setAlignment().

### Qt.Alignment QGraphicsGridLayout.columnAlignment (self, int column)

Returns the alignment for column.

See also setColumnAlignment().

### int QGraphicsGridLayout.columnCount (self)

Returns the number of columns in the grid layout. This is always one more than the index of the last column that is occupied by a layout item (empty columns are counted except for those at the end).

### float QGraphicsGridLayout.columnMaximumWidth (self, int column)

Returns the maximum width for column.

See also setColumnMaximumWidth().

### float QGraphicsGridLayout.columnMinimumWidth (self, int column)

Returns the minimum width for column.

See also setColumnMinimumWidth().

### float QGraphicsGridLayout.columnPreferredWidth (self, int column)

Returns the preferred width for column.

See also setColumnPreferredWidth().

### float QGraphicsGridLayout.columnSpacing (self, int column)

Returns the column spacing for column.

See also setColumnSpacing().

### int QGraphicsGridLayout.columnStretchFactor (self, int column)

Returns the stretch factor for column.

See also setColumnStretchFactor().

### int QGraphicsGridLayout.count (self)

Reimplemented from QGraphicsLayout.count().

Returns the number of layout items in this grid layout.

### float QGraphicsGridLayout.horizontalSpacing (self)

Returns the default horizontal spacing for the grid layout.

See also setHorizontalSpacing().

### QGraphicsGridLayout.invalidate (self)

Reimplemented from QGraphicsLayout.invalidate().

### QGraphicsLayoutItem QGraphicsGridLayout.itemAt (self, int row, int column)

Returns a pointer to the layout item at (row, column).

### QGraphicsLayoutItem QGraphicsGridLayout.itemAt (self, int index)

Reimplemented from QGraphicsLayout.itemAt().

Returns the layout item at index, or 0 if there is no layout item at this index.

### QGraphicsGridLayout.removeAt (self, int index)

Reimplemented from QGraphicsLayout.removeAt().

Removes the layout item at index without destroying it. Ownership of the item is transferred to the caller.

See also addItem().

### QGraphicsGridLayout.removeItem (self, QGraphicsLayoutItem item)

The item argument

Removes the layout item item without destroying it. Ownership of the item is transferred to the caller.

This function was introduced in Qt 4.8.

See also addItem().

### Qt.Alignment QGraphicsGridLayout.rowAlignment (self, int row)

Returns the alignment of row.

See also setRowAlignment().

### int QGraphicsGridLayout.rowCount (self)

Returns the number of rows in the grid layout. This is always one more than the index of the last row that is occupied by a layout item (empty rows are counted except for those at the end).

### float QGraphicsGridLayout.rowMaximumHeight (self, int row)

Returns the maximum height for row, row.

See also setRowMaximumHeight().

### float QGraphicsGridLayout.rowMinimumHeight (self, int row)

Returns the minimum height for row, row.

See also setRowMinimumHeight().

### float QGraphicsGridLayout.rowPreferredHeight (self, int row)

Returns the preferred height for row, row.

See also setRowPreferredHeight().

### float QGraphicsGridLayout.rowSpacing (self, int row)

Returns the row spacing for row.

See also setRowSpacing().

### int QGraphicsGridLayout.rowStretchFactor (self, int row)

Returns the stretch factor for row.

See also setRowStretchFactor().

### QGraphicsGridLayout.setAlignment (self, QGraphicsLayoutItem item, Qt.Alignment alignment)

Sets the alignment for item to alignment.

See also alignment().

### QGraphicsGridLayout.setColumnAlignment (self, int column, Qt.Alignment alignment)

Sets the alignment for column to alignment.

See also columnAlignment().

### QGraphicsGridLayout.setColumnFixedWidth (self, int column, float width)

Sets the fixed width of column to width.

### QGraphicsGridLayout.setColumnMaximumWidth (self, int column, float width)

Sets the maximum width of column to width.

See also columnMaximumWidth().

### QGraphicsGridLayout.setColumnMinimumWidth (self, int column, float width)

Sets the minimum width for column to width.

See also columnMinimumWidth().

### QGraphicsGridLayout.setColumnPreferredWidth (self, int column, float width)

Sets the preferred width for column to width.

See also columnPreferredWidth().

### QGraphicsGridLayout.setColumnSpacing (self, int column, float spacing)

Sets the spacing for column to spacing.

See also columnSpacing().

### QGraphicsGridLayout.setColumnStretchFactor (self, int column, int stretch)

Sets the stretch factor for column to stretch.

See also columnStretchFactor().

### QGraphicsGridLayout.setGeometry (self, QRectF rect)

Reimplemented from QGraphicsLayoutItem.setGeometry().

Sets the bounding geometry of the grid layout to rect.

### QGraphicsGridLayout.setHorizontalSpacing (self, float spacing)

Sets the default horizontal spacing for the grid layout to spacing.

See also horizontalSpacing().

### QGraphicsGridLayout.setRowAlignment (self, int row, Qt.Alignment alignment)

Sets the alignment of row to alignment.

See also rowAlignment().

### QGraphicsGridLayout.setRowFixedHeight (self, int row, float height)

Sets the fixed height for row, row, to height.

### QGraphicsGridLayout.setRowMaximumHeight (self, int row, float height)

Sets the maximum height for row, row, to height.

See also rowMaximumHeight().

### QGraphicsGridLayout.setRowMinimumHeight (self, int row, float height)

Sets the minimum height for row, row, to height.

See also rowMinimumHeight().

### QGraphicsGridLayout.setRowPreferredHeight (self, int row, float height)

Sets the preferred height for row, row, to height.

See also rowPreferredHeight().

### QGraphicsGridLayout.setRowSpacing (self, int row, float spacing)

Sets the spacing for row to spacing.

See also rowSpacing().

### QGraphicsGridLayout.setRowStretchFactor (self, int row, int stretch)

Sets the stretch factor for row to stretch.

See also rowStretchFactor().

### QGraphicsGridLayout.setSpacing (self, float spacing)

Sets the grid layout's default spacing, both vertical and horizontal, to spacing.

See also rowSpacing() and columnSpacing().

### QGraphicsGridLayout.setVerticalSpacing (self, float spacing)

Sets the default vertical spacing for the grid layout to spacing.

See also verticalSpacing().

### QSizeF QGraphicsGridLayout.sizeHint (self, Qt.SizeHint which, QSizeF constraint = QSizeF())

Reimplemented from QGraphicsLayoutItem.sizeHint().

### float QGraphicsGridLayout.verticalSpacing (self)

Returns the default vertical spacing for the grid layout.

See also setVerticalSpacing().