Spec-Zone.ru › Qt 6.1

Класс QGroupBox

Виджет QGroupBox предоставляет рамку группы с заголовком. Подробнее...

Заголовок: #include <QGroupBox>
CMake: find_package(Qt6 COMPONENTS Widgets REQUIRED) target_link_libraries(mytarget PRIVATE Qt6::Widgets)
qmake: QT += widgets
Наследует: QWidget
  • Список всех членов, включая унаследованные

Свойства

  • alignment : Qt::Alignment
  • checkable : bool
  • checked : bool
  • flat : bool
  • title : QString

Открытые функции

QGroupBox(const QString &title, QWidget *parent = nullptr)
QGroupBox(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

Открытые слоты

void setChecked(bool checked)

Сигналы

void clicked(bool checked = false)
void toggled(bool on)

Защищённые функции

virtual 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

Подробное описание

Группа виджетов предоставляет рамку, заголовок вверху, сочетание клавиш и отображает различные другие виджеты внутри себя. Сочетание клавиш переключает фокус клавиатуры на один из дочерних виджетов рамки.

QGroupBox также позволяет задать заголовок (обычно задаётся в конструкторе) и выравнивание заголовка. Рамки группы могут быть флаговыми. Дочерние виджеты в флаговых рамках группы активизируются или деактивируются в зависимости от того, активирована ли рамка группы.

Вы можете сократить потребление места рамкой группы, включив свойство 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(const QString &title, QWidget *parent = nullptr)

Создаёт групповой фрейм с заданным title и parent.

QGroupBox::QGroupBox(QWidget *parent = nullptr)

Создаёт виджет группового фрейма с заданным parent, но без заголовка.

[signal] void QGroupBox::clicked(bool checked = false)

Этот сигнал излучается, когда флажок активизируется (т.е., нажат, затем отпущен, в то время как указатель мыши находится внутри кнопки), или когда нажата комбинация клавиш. Отметим, что этот сигнал не излучается, если вы вызываете setChecked().

Если флажок установлен, checked истинно; если он сброшен, ложно.

См. также checkable, toggled() и checked.

[signal] void QGroupBox::toggled(bool on)

Если у группового фрейма есть флажок, этот сигнал излучается, когда флажок переключается. on истинно, если флажок установлен; иначе — ложно.

Примечание: Сигнал уведомления для свойства checked.

См. также checkable.

[virtual] QGroupBox::~QGroupBox()

Уничтожает групповой фрейм.

[override virtual protected] void QGroupBox::changeEvent(QEvent *ev)

Переопределяет: QWidget::changeEvent(QEvent *event).

[override virtual protected] void QGroupBox::childEvent(QChildEvent *c)

Переопределяет: QObject::childEvent(QChildEvent *event).

[override virtual protected] bool QGroupBox::event(QEvent *e)

Переопределяет: QWidget::event(QEvent *event).

[override virtual protected] void QGroupBox::focusInEvent(QFocusEvent *fe)

Переопределяет: QWidget::focusInEvent(QFocusEvent *event).

[virtual 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(QMouseEvent *event).

[override virtual protected] void QGroupBox::mousePressEvent(QMouseEvent *event)

Переопределяет: QWidget::mousePressEvent(QMouseEvent *event).

[override virtual protected] void QGroupBox::mouseReleaseEvent(QMouseEvent *event)

Переопределяет: QWidget::mouseReleaseEvent(QMouseEvent *event).

[override virtual protected] void QGroupBox::paintEvent(QPaintEvent *event)

Переопределяет: QWidget::paintEvent(QPaintEvent *event).

[override virtual protected] void QGroupBox::resizeEvent(QResizeEvent *e)

Переопределяет: QWidget::resizeEvent(QResizeEvent *event).

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-6.1/qgroupbox.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API