QCheckBox 類

The QCheckBox 小部件提供帶文本標簽的復選框。 更多...

頭: #include <QCheckBox>
qmake: QT += widgets
繼承: QAbstractButton

特性

公共函數

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

靜態公共成員

const QMetaObject staticMetaObject

保護函數

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

額外繼承成員

詳細描述

The QCheckBox 小部件提供帶文本標簽的復選框。

A QCheckBox 是可以被切換為開 (復選) 或切換為關 (取消復選) 的選項按鈕。復選框通常用於錶示可以被啓用 (或禁用) 的應用程序特徵 (不影響其它特徵)。可以實現不同行為類型。例如, QButtonGroup 可以用於邏輯分組復選按鈕,允許獨占復選框。不管怎樣, QButtonGroup 不提供任何視覺錶示。

以下圖像進一步闡明,獨占復選框和非獨占復選框之間的差異。

每當復選 (或清零) 時,復選框發射信號 stateChanged ()。連接到此信號,若想要在復選框每次改變狀態時觸發動作。可以使用 isChecked () 查詢復選框是否被復選。

除通常的復選和取消復選狀態外, QCheckBox 還可選提供第 3 種 "無變化" 狀態指示。這很有用每當需要賦予用戶既不復選,也不取消復選的復選框選項時。若需要這種第 3 狀態,啓用它采用 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 ,和 GUI 設計手冊:復選框 .

特性文檔編製

tristate : bool

此特性保持復選框是否為 3 態復選框

默認為 false,即:復選框隻有 2 種狀態。

訪問函數:

bool isTristate () const
void setTristate (bool y = true)

成員函數文檔編製

QCheckBox:: QCheckBox ( QWidget * parent = nullptr)

構造復選框采用給定 parent ,但沒有文本。

parent 被傳遞給 QAbstractButton 構造函數。

QCheckBox:: QCheckBox (const QString & text , QWidget * parent = nullptr)

構造復選框采用給定 parent and text .

parent 被傳遞給 QAbstractButton 構造函數。

[虛擬] 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 ().

[override virtual protected] bool QCheckBox:: hitButton (const QPoint & pos ) const

重實現自 QAbstractButton::hitButton ().

[protected] void QCheckBox:: initStyleOption ( QStyleOptionButton * option ) const

初始化 option 采用值來自此 QCheckBox 。此方法很有用對於子類要求 QStyleOptionButton ,但不想自己填充所有信息。

另請參閱 QStyleOption::initFrom ().

[override virtual] QSize QCheckBox:: minimumSizeHint () const

重實現自 QWidget::minimumSizeHint ().

[override virtual protected] void QCheckBox:: mouseMoveEvent ( QMouseEvent * e )

重實現自 QAbstractButton::mouseMoveEvent ().

[override virtual protected] void QCheckBox:: nextCheckState ()

重實現自 QAbstractButton::nextCheckState ().

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

重實現自 QAbstractButton::paintEvent ().

void QCheckBox:: setCheckState ( Qt::CheckState state )

將復選框的復選狀態設為 state 。若不需要三態支持,還可以使用 QAbstractButton::setChecked (),其接受布爾。

另請參閱 checkState () 和 Qt::CheckState .

[override virtual] QSize QCheckBox:: sizeHint () const

重實現自 QWidget::sizeHint ().

[signal] void QCheckBox:: stateChanged ( int state )

此信號被發射每當復選框狀態改變時 (即:當用戶復選或取消復選時)。

state 包含復選框的新 Qt::CheckState .