Класс QCheckBox
Виджет QCheckBox предоставляет флажок с текстовой меткой. Подробнее...
| Заголовок: | #include <QCheckBox> |
| qmake: | QT += widgets |
| Наследует: | QAbstractButton |
Свойства
- tristate : bool
Открытые функции
| QCheckBox(const QString &text, QWidget *parent = nullptr) | |
| QCheckBox(QWidget *parent = nullptr) | |
| virtual | ~QCheckBox() |
| Qt::CheckState | checkState() const |
| bool | isTristate() const |
| void | setCheckState(Qt::CheckState state) |
| void | setTristate(bool y = true) |
Переопределенные открытые функции
| virtual QSize | minimumSizeHint() const override |
| virtual QSize | sizeHint() const override |
Сигналы
| void | stateChanged(int state) |
Защищенные функции
| void | initStyleOption(QStyleOptionButton *option) const |
Переопределенные защищенные функции
| virtual void | checkStateSet() override |
| virtual bool | event(QEvent *e) override |
| virtual bool | hitButton(const QPoint &pos) const override |
| virtual void | mouseMoveEvent(QMouseEvent *e) override |
| virtual void | nextCheckState() override |
| virtual void | paintEvent(QPaintEvent *) override |
Подробное описание
Флажок QCheckBox — это кнопка выбора, которая может быть включена (выбрана) или выключена (не выбрана). Флажки обычно используются для представления функций в приложении, которые могут быть включены или выключены без влияния на другие. Можно реализовать различные типы поведения. Например, QButtonGroup может быть использован для логической группировки флажков, что позволяет создавать взаимоисключающие флажки. Однако QButtonGroup не предоставляет никакого визуального представления.
На приведенном ниже рисунке показаны различия между взаимоисключающими и не взаимоисключающими флажками.
Всякий раз, когда флажок выбирается или снимается, испускается сигнал stateChanged(). Подключитесь к этому сигналу, если хотите выполнить действие каждый раз, когда состояние флажка изменяется. Вы можете использовать isChecked(), чтобы узнать, выбран флажок или нет.
Помимо обычных состояний «выбран» и «не выбран», QCheckBox необязательно предоставляет третье состояние для обозначения «без изменений». Это полезно, когда необходимо предоставить пользователю возможность ни выбирать, ни убирать флажок. Если вам нужно это третье состояние, включите его с помощью setTristate() и используйте checkState(), чтобы получить текущее состояние переключения.
Как и QPushButton, флажок отображает текст и необязательно небольшой значок. Значок устанавливается с помощью setIcon(). Текст можно установить в конструкторе или с помощью setText(). Краткую клавишу можно указать, поместив предпочтительный символ перед амперсандом. Например:
QCheckBox *checkbox = new QCheckBox("C&ase sensitive", this); В этом примере короткая клавиша — Alt+A. Подробности см. в документации QShortcut. Чтобы отобразить фактический амперсанд, используйте '&&'.
Важные унаследованные функции: text(), setText(), text(), pixmap(), setPixmap(), accel(), setAccel(), isToggleButton(), setDown(), isDown(), isOn(), checkState(), autoRepeat(), isExclusiveToggle(), group(), setAutoRepeat(), toggle(), pressed(), released(), clicked(), toggled(), checkState() и stateChanged().
См. также QAbstractButton, QRadioButton и Справочник по проектированию пользовательского интерфейса: Флажок.
Документация по свойству
tristate : bool
Это свойство указывает, является ли флажок флажком с тремя состояниями.
По умолчанию значение false, т.е. флажок имеет только два состояния.
Функции доступа:
| bool | isTristate() const |
| void | setTristate(bool y = true) |
Документация по членам-функциям
QCheckBox::QCheckBox(const QString &text, QWidget *parent = nullptr)
Конструирует флажок с заданным parent и text.
parent передаётся конструктору QAbstractButton.
QCheckBox::QCheckBox(QWidget *parent = nullptr)
Конструирует флажок с заданным parent, но без текста.
parent передаётся конструктору QAbstractButton.
[signal] void QCheckBox::stateChanged(int state)
Этот сигнал испускается всякий раз, когда состояние флажка изменяется, т.е. когда пользователь выбирает или снимает его.
state содержит новое состояние флажка Qt::CheckState.
[virtual] QCheckBox::~QCheckBox()
Деструктор.
Qt::CheckState QCheckBox::checkState() const
Возвращает состояние проверки флажка. Если вам не требуется поддержка три состояния, вы также можете использовать QAbstractButton::isChecked(), который возвращает булево значение.
См. также setCheckState() и Qt::CheckState.
[override virtual protected] void QCheckBox::checkStateSet()
Переопределяет: QAbstractButton::checkStateSet().
[override virtual protected] bool QCheckBox::event(QEvent *e)
Переопределяет: QAbstractButton::event(QEvent *e).
[override virtual protected] bool QCheckBox::hitButton(const QPoint &pos) const
Переопределяет: QAbstractButton::hitButton(const QPoint &pos) const.
[protected] void QCheckBox::initStyleOption(QStyleOptionButton *option) const
Инициализирует option значениями из этого QCheckBox. Этот метод полезен для подклассов, которые требуют QStyleOptionButton, но не хотят сами заполнять всю информацию.
См. также QStyleOption::initFrom().
[override virtual] QSize QCheckBox::minimumSizeHint() const
Переопределяет: QWidget::minimumSizeHint() const.
[override virtual protected] void QCheckBox::mouseMoveEvent(QMouseEvent *e)
Переопределяет: QAbstractButton::mouseMoveEvent(QMouseEvent *e).
[override virtual protected] void QCheckBox::nextCheckState()
Переопределяет: QAbstractButton::nextCheckState().
[override virtual protected] void QCheckBox::paintEvent(QPaintEvent *)
Переопределяет: QAbstractButton::paintEvent(QPaintEvent *e).
void QCheckBox::setCheckState(Qt::CheckState state)
Устанавливает состояние проверки чекбокса в state. Если вам не нужна поддержка три-состояний, вы можете также использовать QAbstractButton::setChecked(), который принимает булево значение.
См. также checkState() и Qt::CheckState.
[override virtual] QSize QCheckBox::sizeHint() const
Переопределяет: QWidget::sizeHint() const.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qcheckbox.html