Класс QGraphicsGridLayout
Класс QGraphicsGridLayout обеспечивает структуру сетки для управления виджетами в представлении графики. Подробнее...
| Заголовок: | #include <QGraphicsGridLayout> |
| qmake: | QT += widgets |
| С тех пор: | Qt 4.4 |
| Наследует: | QGraphicsLayout |
Открытые функции
| QGraphicsGridLayout(QGraphicsLayoutItem *parent = Q_NULLPTR) | |
| virtual | ~QGraphicsGridLayout() |
| void | addItem(QGraphicsLayoutItem *item, int row, int column, int rowSpan, int columnSpan, Qt::Alignment alignment = Qt::Alignment()) |
| void | addItem(QGraphicsLayoutItem *item, int row, int column, Qt::Alignment alignment = Qt::Alignment()) |
| Qt::Alignment | alignment(QGraphicsLayoutItem *item) const |
| Qt::Alignment | columnAlignment(int column) const |
| int | columnCount() const |
| qreal | columnMaximumWidth(int column) const |
| qreal | columnMinimumWidth(int column) const |
| qreal | columnPreferredWidth(int column) const |
| qreal | columnSpacing(int column) const |
| int | columnStretchFactor(int column) const |
| qreal | horizontalSpacing() const |
| QGraphicsLayoutItem * | itemAt(int row, int column) const |
| void | removeItem(QGraphicsLayoutItem *item) |
| Qt::Alignment | rowAlignment(int row) const |
| int | rowCount() const |
| qreal | rowMaximumHeight(int row) const |
| qreal | rowMinimumHeight(int row) const |
| qreal | rowPreferredHeight(int row) const |
| qreal | rowSpacing(int row) const |
| int | rowStretchFactor(int row) const |
| void | setAlignment(QGraphicsLayoutItem *item, Qt::Alignment alignment) |
| void | setColumnAlignment(int column, Qt::Alignment alignment) |
| void | setColumnFixedWidth(int column, qreal width) |
| void | setColumnMaximumWidth(int column, qreal width) |
| void | setColumnMinimumWidth(int column, qreal width) |
| void | setColumnPreferredWidth(int column, qreal width) |
| void | setColumnSpacing(int column, qreal spacing) |
| void | setColumnStretchFactor(int column, int stretch) |
| void | setHorizontalSpacing(qreal spacing) |
| void | setRowAlignment(int row, Qt::Alignment alignment) |
| void | setRowFixedHeight(int row, qreal height) |
| void | setRowMaximumHeight(int row, qreal height) |
| void | setRowMinimumHeight(int row, qreal height) |
| void | setRowPreferredHeight(int row, qreal height) |
| void | setRowSpacing(int row, qreal spacing) |
| void | setRowStretchFactor(int row, int stretch) |
| void | setSpacing(qreal spacing) |
| void | setVerticalSpacing(qreal spacing) |
| qreal | verticalSpacing() const |
Реализованные общедоступные функции
| virtual int | count() const |
| virtual void | invalidate() |
| virtual QGraphicsLayoutItem * | itemAt(int index) const |
| virtual void | removeAt(int index) |
| virtual void | setGeometry(const QRectF &rect) |
| virtual QSizeF | sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const |
- 10 общедоступных функций, унаследованных от QGraphicsLayout
- 35 общедоступных функций, унаследованных от QGraphicsLayoutItem
Дополнительные унаследованные члены
- 1 защищенный метод, унаследованный от QGraphicsLayout
- 3 защищенных метода, унаследованных от QGraphicsLayoutItem
Подробное описание
Класс QGraphicsGridLayout предоставляет структуру сетки для управления виджетами в представлении Graphics View.
Наиболее распространённый способ использования QGraphicsGridLayout заключается в создании объекта в куче без родителя, добавлении виджетов и макетов с помощью вызова addItem() и, наконец, присвоении макета виджету, вызвав QGraphicsWidget::setLayout(). QGraphicsGridLayout автоматически вычисляет размеры сетки по мере добавления элементов.
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);
Макет принимает на себя владение элементами. В некоторых случаях, когда элемент макета также наследует от QGraphicsItem (например, QGraphicsWidget), возникает неоднозначность во владении, поскольку элемент макета принадлежит двум иерархиям владения. Обратитесь к документации QGraphicsLayoutItem::setOwnedByLayout() для получения информации о том, как справиться с этим. Вы можете получить доступ к каждому элементу в макете, вызвав count() и itemAt(). Вызов removeAt() удалит элемент из макета без его уничтожения.
Рекомендации по размеру и политики размеров в QGraphicsGridLayout
QGraphicsGridLayout учитывает рекомендации по размеру и политики размеров каждого элемента, а когда ячейка в сетке имеет больше места, чем могут заполнить элементы, каждый элемент размещается в соответствии с выравниванием макета для этого элемента. Вы можете установить выравнивание для каждого элемента, вызвав setAlignment(), и проверить выравнивание любого элемента, вызвав alignment(). Также вы можете установить выравнивание для всего ряда или столбца, вызвав setRowAlignment() и setColumnAlignment() соответственно. По умолчанию элементы выравниваются по верхнему левому углу.
См. также QGraphicsLinearLayout и QGraphicsWidget.
Документация по членам-функциям
QGraphicsGridLayout::QGraphicsGridLayout(QGraphicsLayoutItem *parent = Q_NULLPTR)
Создаёт экземпляр QGraphicsGridLayout. parent передаётся в конструктор QGraphicsLayout.
[virtual] QGraphicsGridLayout::~QGraphicsGridLayout()
Уничтожает объект QGraphicsGridLayout.
void QGraphicsGridLayout::addItem(QGraphicsLayoutItem *item, int row, int column, int rowSpan, int columnSpan, Qt::Alignment alignment = Qt::Alignment())
Добавляет item в сетку в строке row и столбце column. Можно указать rowSpan, columnSpan и необязательное выравнивание alignment.
void QGraphicsGridLayout::addItem(QGraphicsLayoutItem *item, int row, int column, Qt::Alignment alignment = Qt::Alignment())
Добавляет item в сетку в строке row и столбце column. Можно указать необязательное выравнивание alignment для item.
Qt::Alignment QGraphicsGridLayout::alignment(QGraphicsLayoutItem *item) const
Возвращает выравнивание для item.
См. также setAlignment().
Qt::Alignment QGraphicsGridLayout::columnAlignment(int column) const
Возвращает выравнивание для column.
См. также setColumnAlignment().
int QGraphicsGridLayout::columnCount() const
Возвращает количество столбцов в сетке макета. Это всегда на единицу больше индекса последнего занятого столбца элементом макета (пустые столбцы считаются, за исключением тех, которые находятся в конце).
qreal QGraphicsGridLayout::columnMaximumWidth(int column) const
Возвращает максимальную ширину для column.
См. также setColumnMaximumWidth().
qreal QGraphicsGridLayout::columnMinimumWidth(int column) const
Возвращает минимальную ширину для column.
См. также setColumnMinimumWidth().
qreal QGraphicsGridLayout::columnPreferredWidth(int column) const
Возвращает предпочтительную ширину для column.
См. также setColumnPreferredWidth().
qreal QGraphicsGridLayout::columnSpacing(int column) const
Возвращает отступ между столбцами для column.
См. также setColumnSpacing().
int QGraphicsGridLayout::columnStretchFactor(int column) const
Возвращает коэффициент растяжения для column.
См. также setColumnStretchFactor().
[virtual] int QGraphicsGridLayout::count() const
Переопределено из QGraphicsLayout::count().
Возвращает количество элементов макета в этом макете сетки.
qreal QGraphicsGridLayout::horizontalSpacing() const
Возвращает стандартный горизонтальный отступ для макета сетки.
См. также setHorizontalSpacing().
[virtual] void QGraphicsGridLayout::invalidate()
Переопределено из QGraphicsLayout::invalidate().
QGraphicsLayoutItem *QGraphicsGridLayout::itemAt(int row, int column) const
Возвращает указатель на элемент макета в позиции (row, column).
[virtual] QGraphicsLayoutItem *QGraphicsGridLayout::itemAt(int index) const
Переопределено из QGraphicsLayout::itemAt().
Возвращает элемент макета в позиции index или 0, если элемента нет.
[virtual] void QGraphicsGridLayout::removeAt(int index)
Переопределено из QGraphicsLayout::removeAt().
Удаляет элемент макета в позиции index без его уничтожения. Владение элементом передаётся вызывающей стороне.
См. также addItem().
void QGraphicsGridLayout::removeItem(QGraphicsLayoutItem *item)
Удаляет элемент макета item без его уничтожения. Владение элементом передаётся вызывающей стороне.
См. также addItem().
Qt::Alignment QGraphicsGridLayout::rowAlignment(int row) const
Возвращает выравнивание для row.
См. также setRowAlignment().
int QGraphicsGridLayout::rowCount() const
Возвращает количество строк в сетке макета. Это всегда на единицу больше индекса последней занятой строки элементом макета (пустые строки считаются, за исключением тех, которые находятся в конце).
qreal QGraphicsGridLayout::rowMaximumHeight(int row) const
Возвращает максимальную высоту для строки row.
См. также setRowMaximumHeight().
qreal QGraphicsGridLayout::rowMinimumHeight(int row) const
Возвращает минимальную высоту для строки row.
См. также setRowMinimumHeight().
qreal QGraphicsGridLayout::rowPreferredHeight(int row) const
Возвращает предпочтительную высоту для строки row.
См. также setRowPreferredHeight().
qreal QGraphicsGridLayout::rowSpacing(int row) const
Возвращает интервал строк для row.
См. также setRowSpacing().
int QGraphicsGridLayout::rowStretchFactor(int row) const
Возвращает коэффициент растяжения для row.
См. также setRowStretchFactor().
void QGraphicsGridLayout::setAlignment(QGraphicsLayoutItem *item, Qt::Alignment alignment)
Устанавливает выравнивание для item на alignment.
См. также alignment().
void QGraphicsGridLayout::setColumnAlignment(int column, Qt::Alignment alignment)
Устанавливает выравнивание для column на alignment.
См. также columnAlignment().
void QGraphicsGridLayout::setColumnFixedWidth(int column, qreal width)
Устанавливает фиксированную ширину для column на width.
void QGraphicsGridLayout::setColumnMaximumWidth(int column, qreal width)
Устанавливает максимальную ширину для column на width.
См. также columnMaximumWidth().
void QGraphicsGridLayout::setColumnMinimumWidth(int column, qreal width)
Устанавливает минимальную ширину для column на width.
См. также columnMinimumWidth().
void QGraphicsGridLayout::setColumnPreferredWidth(int column, qreal width)
Устанавливает предпочтительную ширину для column на width.
См. также columnPreferredWidth().
void QGraphicsGridLayout::setColumnSpacing(int column, qreal spacing)
Устанавливает интервал для column на spacing.
См. также columnSpacing().
void QGraphicsGridLayout::setColumnStretchFactor(int column, int stretch)
Устанавливает коэффициент растяжения для column на stretch.
См. также columnStretchFactor().
[virtual] void QGraphicsGridLayout::setGeometry(const QRectF &rect)
Переопределено из QGraphicsLayoutItem::setGeometry().
Устанавливает ограничивающую геометрию сетки макета на rect.
void QGraphicsGridLayout::setHorizontalSpacing(qreal spacing)
Устанавливает стандартный горизонтальный интервал для сетки макета на spacing.
См. также horizontalSpacing().
void QGraphicsGridLayout::setRowAlignment(int row, Qt::Alignment alignment)
Устанавливает выравнивание для row на alignment.
См. также rowAlignment().
void QGraphicsGridLayout::setRowFixedHeight(int row, qreal height)
Устанавливает фиксированную высоту для строки row на height.
void QGraphicsGridLayout::setRowMaximumHeight(int row, qreal height)
Устанавливает максимальную высоту для строки row на height.
См. также rowMaximumHeight().
void QGraphicsGridLayout::setRowMinimumHeight(int row, qreal height)
Устанавливает минимальную высоту для строки row на height.
См. также rowMinimumHeight().
void QGraphicsGridLayout::setRowPreferredHeight(int row, qreal height)
Устанавливает предпочтительную высоту для строки row на height.
См. также rowPreferredHeight().
void QGraphicsGridLayout::setRowSpacing(int row, qreal spacing)
Устанавливает интервал для row на spacing.
См. также rowSpacing().
void QGraphicsGridLayout::setRowStretchFactor(int row, int stretch)
Устанавливает коэффициент растяжения для row на stretch.
См. также rowStretchFactor().
void QGraphicsGridLayout::setSpacing(qreal spacing)
Устанавливает стандартный интервал сетки макета, как вертикальный, так и горизонтальный, на spacing.
См. также rowSpacing() и columnSpacing().
void QGraphicsGridLayout::setVerticalSpacing(qreal spacing)
Устанавливает стандартный вертикальный интервал для сетки макета на spacing.
См. также verticalSpacing().
[virtual] QSizeF QGraphicsGridLayout::sizeHint(Qt::SizeHint which, const QSizeF &constraint = QSizeF()) const
Переопределено из QGraphicsLayoutItem::sizeHint().
qreal QGraphicsGridLayout::verticalSpacing() const
Возвращает стандартный вертикальный интервал для сетки макета.
См. также setVerticalSpacing().
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/archives/qt-5.6/qgraphicsgridlayout.html