返回介绍

QCheckBox类

发布于 2019-10-04 14:58:45 字数 7404 浏览 2058 评论 0 收藏 0

QCheckBox窗口部件提供一个带文本标签的复选框。 详情请见……

#include <qcheckbox.h>

继承了QButton。

所有成员函数的列表。

公有成员

  • QCheckBox ( QWidget*parent, constchar*name = 0 )
  • QCheckBox ( constQString&text, QWidget*parent, constchar*name = 0 )
  • bool isChecked () const
  • void setNoChange ()
  • void setTristate ( booly = TRUE )
  • bool isTristate () const

公有槽

  • void setChecked ( boolcheck )

重要的继承成员

  • QString text () const
  • virtual void setText ( const QString & )
  • const QPixmap * pixmap () const
  • virtual void setPixmap ( const QPixmap & )
  • QKeySequence accel () const
  • virtual void setAccel ( const QKeySequence & )
  • bool isToggleButton () const
  • virtual void setDown ( bool )
  • bool isDown () const
  • bool isOn () const
  • ToggleState state () const
  • bool autoRepeat () const
  • virtual void setAutoRepeat ( bool )
  • bool isExclusiveToggle () const
  • QButtonGroup * group () const
  • void toggle ()
  • void pressed ()
  • void released ()
  • void clicked ()
  • void toggled ( boolon )
  • void stateChanged ( intstate )

属性

  • bool autoMask- 复选框是否被自动遮蔽(只读)
  • bool checked- 复选框是否被选中
  • bool tristate- 复选框是否是三态复选框

详细描述

QCheckBox窗口部件提供一个带文本标签的复选框。

QCheckBox和QRadioButton都是选项按钮。这是因为它们都可以在开(选中)或者关(未选中)之间切换。它们的区别是对用户选择的限制。单选框定义了“多选一”的选择,而复选框提供的是“多选多”的选择。

尽管在技术上可以通过复选框来实现单选框的行为,反之亦然,但我们还是强烈建议使用众所周知的约定。

QButtonGroup可以用来在视觉上把许多复选框组织在一起。

只要复选框被选中或者清除,它都会发射一个信号toggled()。如果你想在复选框改变状态的时候触发一个行为,请连接这个信号。你可以使用isChecked()来查询复选框是否被选中。

除了常用的被选中和未选中两个状态,QCheckBox还可以任选地提供第三种状态来表明“没有改变”。当你需要给用户一个选中或者未选中复选框的选择时,这是很有用的。如果你需要第三种状态,通过setTristate()来使它生效并且使用state()来查询当前的切换状态。当三态复选框改变状态时,它发射stateChanged()信号。

和QPushButton一样,复选框可以显示文本或者像素映射。文本可以通过构造函数或者setText()来设置,像素映射可以通过setPixmap()来设置。

也可以参考QButton、QRadioButton、福勒:复选框和基本窗口部件。


成员函数文档

QCheckBox::QCheckBox ( QWidget*parent, constchar*name = 0 )

构造一个没有文本的复选框。

parentname参数被发送到QWidget的构造函数。

QCheckBox::QCheckBox ( constQString&text, QWidget*parent, constchar*name = 0 )

构造一个文本为text的复选框。

parentname参数被发送到QWidget的构造函数。

QKeySequence QButton::accel () const

返回这个按钮的相关快捷键。详细情况请参考“accel”属性。

bool QButton::autoRepeat () const

如果autoRepeat生效,返回真,否则返回假。详细情况请参考“autoRepeat”属性。

void QButton::clicked () [信号]

当按钮被激活时(比如,当鼠标光标在按钮中,按钮首先被按下并且然后被释放),或者当快捷键被按下时,或者animateClick()被调用时,这个信号被发送。如果你调用setDown(),这个信号被发送。

如果你想把几个按钮连接到同一个槽中,QButtonGroup::clicked()信号可以做这样的工作。

也可以参考pressed()、released()、toggled()、autoRepeat和down。

实例:fonts/simple-qfont-demo/viewer.cpp、listbox/listbox.cpp、network/clientserver/client/client.cpp、network/ftpclient/ftpmainwindow.cpp、richtext/richtext.cpp、t2/main.cpp和t4/main.cpp。

QButtonGroup* QButton::group () const

返回这个按钮所属的按钮组的指针。

如果这个按钮不是任何一个QButtonGroup的成员,这个函数返回0。

也可以参考QButtonGroup。

bool QCheckBox::isChecked () const

如果复选框被选中,返回真,否则返回假。详细情况请参考“checked”属性。

bool QButton::isDown () const

如果按钮被按下,返回真,否则返回假。详细情况请参考“down”属性。

bool QButton::isExclusiveToggle () const

如果按钮是排它的,返回真,否则返回假。详细情况请参考“exclusiveToggle”属性。

bool QButton::isOn () const

如果按钮被切换,返回真,否则返回假。详细情况请参考“on”属性。

bool QButton::isToggleButton () const

如果按钮是一个切换按钮,返回真,否则返回假。详细情况请参考“toggleButton”属性。

bool QCheckBox::isTristate () const

如果复选框是三态复选框,返回真,否则返回假。详细情况请参考“tristate”属性。

constQPixmap* QButton::pixmap () const

返回按钮中所显示的像素映射。详细情况请参考“pixmap”属性。

void QButton::pressed () [信号]

当按钮被按下的时候,这个信号被发送。

也可以参考released()和clicked()。

实例:network/httpd/httpd.cpp和popup/popup.cpp。

void QButton::released () [信号]

当按钮被释放的时候,这个信号被发送。

也可以参考pressed()、clicked()和toggled()。

void QButton::setAccel ( constQKeySequence& ) [虚]

设置按钮的相关快捷键。详细情况请参考“accel”属性。

void QButton::setAutoRepeat ( bool ) [虚]

设置autoRepeat是否生效。详细情况请参考“autoRepeat”属性。

void QCheckBox::setChecked ( boolcheck ) [槽]

设置复选框是否被选中为check。详细情况请参考“checked”属性。

void QButton::setDown ( bool ) [虚]

设置按钮是否被按下。详细情况请参考“down”属性。

void QCheckBox::setNoChange ()

设置复选框为“没有变化”状态。

也可以参考tristate。

void QButton::setPixmap ( constQPixmap& ) [虚]

设置按钮上显示的像素映射。详细情况请参考“pixmap”属性。

void QButton::setText ( constQString& ) [虚]

设置按钮上显示的文本。详细情况请参考“text”属性。

void QCheckBox::setTristate ( booly = TRUE )

设置复选框是否为三态复选框为y。详细情况请参考“tristate”属性。

ToggleState QButton::state () const

如果按钮是被切换的,返回真,否则返回假。详细情况请参考“toggleState”属性。

void QButton::stateChanged ( intstate ) [信号]

只要切换按钮改变状态,这个信号就被发送。如果按钮是开的,state为2,如果是“未改变”状态,为1,或者如果按钮是关的,为0。

这也许是一个用户行为的结果,toggle()槽激活,或者因为setState()或setOn()被调用。

也可以参考clicked()。

QString QButton::text () const

返回按钮上所显示的文本。详细情况请参考“text”属性。

void QButton::toggle () [槽]

切换一个切换按钮的状态。

也可以参考on、setOn()、toggled()和toggleButton。

void QButton::toggled ( boolon ) [信号]

只要切换按钮改变状态,这个信号就被发送。如果按钮是开的,on为真,或者如果按钮是关的,on为假。

这也许是一个用户行为的结果,toggle()槽被激活,或者因为setOn()被调用。

也可以参考clicked()。

实例:listbox/listbox.cpp。


属性文档

QKeySequence accel

这个属性保存的是按钮相关的快捷键。

如果没有快捷键被设置,这个属性为0。如果你设置这个属性为0,那么任何当前的快捷键都被删除。

使用setAccel()来设置这个属性值并且使用accel()来得到这个属性值。

bool autoMask

这个属性保存的是复选框是否被自动遮蔽。

也可以参考QWidget::autoMask。

bool autoRepeat

这个属性保存的是autoRepeat是否生效。

如果autoRepeat生效,那么如果按钮是按下的,clicked()信号会被定期发送。这个属性对切换按钮没有效果。autoRepeat默认是关闭的。

使用setAutoRepeat()来设置这个属性值并且使用autoRepeat()来得到这个属性值。

bool checked

这个属性保存的是复选框是否被选中。

默认是未选中的,也就是假。

使用setChecked()来设置这个属性值并且使用isChecked()来得到这个属性值。

QPixmap pixmap

这个属性保存的是按钮上显示的像素映射。

如果像素映射是单色的(比如,它是一个QBitmap或者它的深度为1)并且没有掩码,这个属性将设置像素映射为它自己的掩码。这样的目的是为了绘制对于切换按钮是很重要的透明位图。

如果没有像素映射被设置,pixmap()返回0。

使用setPixmap()来设置这个属性值并且使用pixmap()来得到这个属性值。

QString text

这个属性保存的是按钮上显示的文本。

如果按钮没有文本,这个属性将返回一个零字符串。如果文本中有一个“&”,那么一个使用紧随“&”之后的字母的快捷键将被创建。

没有默认文本。

使用setText()来设置这个属性值并且使用text().来得到这个属性值。

bool tristate

这个属性保存的是复选框是否是三态复选框。

默认是两态的,也就是三态为假。

使用setTristate()来设置这个属性值并且使用isTristate()来得到这个属性值。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文