Класс QGroupBox
Виджет QGroupBox предоставляет рамку группы с заголовком. Подробнее...
| Заголовок: | #include <QGroupBox> |
| qmake: | QT += widgets |
| Наследует: | QWidget |
Свойства
Открытые функции
| QGroupBox(QWidget *parent = nullptr) | |
| QGroupBox(const QString &title, QWidget *parent = nullptr) | |
| virtual | ~QGroupBox() |
| Qt::Alignment | alignment() const |
| bool | isCheckable() const |
| bool | isChecked() const |
| bool | isFlat() const |
| void | setAlignment(int alignment) |
| void | setCheckable(bool checkable) |
| void | setFlat(bool flat) |
| void | setTitle(const QString &title) |
| QString | title() const |
Переопределённые открытые функции
| virtual QSize | minimumSizeHint() const override |
- 214 открытых функций унаследовано от QWidget
- 31 открытых функций унаследовано от QObject
- 14 открытых функций унаследовано от QPaintDevice
Открытые слоты
| void | setChecked(bool checked) |
Сигналы
| void | clicked(bool checked = false) |
| void | toggled(bool on) |
Статические открытые члены
| const QMetaObject | staticMetaObject |
- 5 статических открытых членов унаследовано от QWidget
- 9 статических открытых членов унаследовано от QObject
Защищённые функции
| void | initStyleOption(QStyleOptionGroupBox *option) const |
Переопределённые защищённые функции
| virtual void | changeEvent(QEvent *ev) override |
| virtual void | childEvent(QChildEvent *c) override |
| virtual bool | event(QEvent *e) override |
| virtual void | focusInEvent(QFocusEvent *fe) override |
| virtual void | mouseMoveEvent(QMouseEvent *event) override |
| virtual void | mousePressEvent(QMouseEvent *event) override |
| virtual void | mouseReleaseEvent(QMouseEvent *event) override |
| virtual void | paintEvent(QPaintEvent *event) override |
| virtual void | resizeEvent(QResizeEvent *e) override |
- 35 защищённых функций унаследовано от QWidget
- 9 защищённых функций унаследовано от QObject
- 1 защищённая функция унаследовано от QPaintDevice
Дополнительные унаследованные члены
- 1 защищённый слот унаследовано от QWidget
Подробное описание
Виджет QGroupBox предоставляет рамку группы с заголовком.
Группа с заголовком предоставляет рамку, заголовок вверху, сочетание клавиш и отображает различные другие виджеты внутри себя. Сочетание клавиш перемещает фокус клавиатуры на один из дочерних виджетов группы.
QGroupBox также позволяет задать заголовок (обычно устанавливается в конструкторе) и выравнивание заголовка. Группы могут быть флаговыми. Дочерние виджеты в флаговых группах активированы или деактивированы в зависимости от того, установлен ли флажок в группе checked.
Вы можете уменьшить потребление места группой, включив свойство flat. В большинстве стилей включение этого свойства приводит к удалению левых, правых и нижних границ рамки.
QGroupBox не автоматически размещает дочерние виджеты (которые часто являются QCheckBox или QRadioButton, но могут быть любыми виджетами). Следующий пример показывает, как можно настроить QGroupBox с макетом:
QGroupBox *groupBox = new QGroupBox(tr("Exclusive Radio Buttons"));
QRadioButton *radio1 = new QRadioButton(tr("&Radio button 1"));
QRadioButton *radio2 = new QRadioButton(tr("R&adio button 2"));
QRadioButton *radio3 = new QRadioButton(tr("Ra&dio button 3"));
radio1->setChecked(true);
QVBoxLayout *vbox = new QVBoxLayout;
vbox->addWidget(radio1);
vbox->addWidget(radio2);
vbox->addWidget(radio3);
vbox->addStretch(1);
groupBox->setLayout(vbox); См. также QButtonGroup и Пример группы с заголовком.
Документация свойств
alignment : Qt::Alignment
Это свойство содержит выравнивание заголовка групповой рамки.
Большинство стилей помещают заголовок в верхней части рамки. Горизонтальное выравнивание заголовка может быть задано с помощью отдельных значений из следующего списка:
- Qt::AlignLeft выравнивает текст заголовка по левому краю групповой рамки.
- Qt::AlignRight выравнивает текст заголовка по правому краю групповой рамки.
- Qt::AlignHCenter выравнивает текст заголовка по горизонтали по центру групповой рамки.
По умолчанию выравнивание — Qt::AlignLeft.
Функции доступа:
| Qt::Alignment | alignment() const |
| void | setAlignment(int alignment) |
См. также Qt::Alignment.
checkable : bool
Это свойство указывает, содержит ли групповая рамка флажок в своём заголовке.
Если это свойство равно true, групповая рамка отображает свой заголовок с помощью флажка вместо обычной метки. Если флажок установлен, дочерние элементы групповой рамки активны; в противном случае они отключены и недоступны.
По умолчанию групповые рамки не являются флаговыми.
Если для групповой рамки это свойство включено, она также будет по умолчанию отмечена, чтобы убедиться, что её содержимое активно.
Функции доступа:
| bool | isCheckable() const |
| void | setCheckable(bool checkable) |
См. также checked.
checked : bool
Это свойство указывает, отмечена ли групповая рамка.
Если групповая рамка является флаговой, она отображается с флажком. Если флажок установлен, дочерние элементы групповой рамки активны; в противном случае дочерние элементы отключены и недоступны для пользователя.
По умолчанию флаговые групповые рамки также отмечены.
Функции доступа:
| bool | isChecked() const |
| void | setChecked(bool checked) |
Сигнал уведомления:
| void | toggled(bool on) |
См. также checkable.
flat : bool
Это свойство указывает, является ли групповая рамка плоской или имеет рамку.
Групповая рамка обычно состоит из окружающей рамки с заголовком вверху. Если это свойство включено, в большинстве стилей рисуется только верхняя часть рамки; в противном случае рисуется вся рамка.
По умолчанию это свойство отключено, то есть групповые рамки не являются плоскими, если не указано иное.
Примечание: В некоторых стилях плоские и не плоские групповые рамки имеют схожее представление и могут быть не такими различимыми, как в других стилях.
Функции доступа:
| bool | isFlat() const |
| void | setFlat(bool flat) |
См. также title.
title : QString
Это свойство содержит текст заголовка групповой рамки.
Текст заголовка групповой рамки будет иметь сочетание клавиш, если заголовок содержит амперсанд ('&'), за которым следует буква.
g->setTitle("&User information"); В приведенном выше примере сочетание клавиш Alt+U переводит фокус клавиатуры в групповую рамку. Подробности см. в документации QShortcut (чтобы отобразить фактический амперсанд, используйте '&&').
По умолчанию текст заголовка отсутствует.
Функции доступа:
| QString | title() const |
| void | setTitle(const QString &title) |
См. также alignment.
Документация функций-членов
QGroupBox::QGroupBox(QWidget *parent = nullptr)
Создаёт виджет групповой рамки с заданным parent, но без заголовка.
QGroupBox::QGroupBox(const QString &title, QWidget *parent = nullptr)
Создаёт групповую рамку с заданным title и parent.
[virtual] QGroupBox::~QGroupBox()
Удаляет групповую рамку.
[override virtual protected] void QGroupBox::changeEvent(QEvent *ev)
Переопределено из QWidget::changeEvent().
[override virtual protected] void QGroupBox::childEvent(QChildEvent *c)
Переопределено из QObject::childEvent().
[signal] void QGroupBox::clicked(bool checked = false)
Этот сигнал генерируется при активации флажка (т.е., нажатии и отпускании мыши внутри кнопки) или при нажатии сочетания клавиш. Обратите внимание, что этот сигнал не генерируется, если вы вызываете setChecked().
Если флажок установлен, checked имеет значение true; если флажок снят, значение false.
Эта функция была введена в Qt 4.2.
См. также checkable, toggled() и checked.
[override virtual protected] bool QGroupBox::event(QEvent *e)
Переопределено из QWidget::event().
[override virtual protected] void QGroupBox::focusInEvent(QFocusEvent *fe)
Переопределено из QWidget::focusInEvent().
[protected] void QGroupBox::initStyleOption(QStyleOptionGroupBox *option) const
Инициализирует option значениями из этой QGroupBox. Этот метод полезен для подклассов, когда им требуется QStyleOptionGroupBox, но они не хотят сами заполнять всю информацию.
См. также QStyleOption::initFrom().
[override virtual] QSize QGroupBox::minimumSizeHint() const
Переопределено из QWidget::minimumSizeHint().
[override virtual protected] void QGroupBox::mouseMoveEvent(QMouseEvent *event)
Переопределено из QWidget::mouseMoveEvent().
[override virtual protected] void QGroupBox::mousePressEvent(QMouseEvent *event)
Переопределено из QWidget::mousePressEvent().
[override virtual protected] void QGroupBox::mouseReleaseEvent(QMouseEvent *event)
Переопределено из QWidget::mouseReleaseEvent().
[override virtual protected] void QGroupBox::paintEvent(QPaintEvent *event)
Переопределено из QWidget::paintEvent().
[override virtual protected] void QGroupBox::resizeEvent(QResizeEvent *e)
Переопределено из QWidget::resizeEvent().
[signal] void QGroupBox::toggled(bool on)
Если групповая рамка является флаговой, этот сигнал генерируется при переключении флажка. on имеет значение true, если флажок установлен; в противном случае значение false.
Примечание: Сигнал уведомления для свойства checked.
См. также checkable.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.12/qgroupbox.html