Spec-Zone.ru › Qt

Класс 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 равно true; в противном случае оно равно false.

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

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

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

Примечание: Сигнал оповещения для свойства 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.2/qgroupbox.html

Spec-Zone.ru

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