news 2026/5/7 22:45:20

创建复选框控件

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
创建复选框控件

复选框控件(QCheckBox)

一、控件介绍

QCheckBox 是 Qt 框架提供的标准复选框控件,用于在用户界面中提供一个可选择的方框。用户可以通过点击来切换其状态,状态通常分为“选中”和“未选中”。
此外,QCheckBox 还支持“三态模式”(Tri-state),可以显示“部分选中”状态,用于复杂的层级选择场景(例如树状结构中的父子节点同步)。

复选框一般由一个小方框加上文字标签组成。方框表示选择状态,文字则用于描述该选项的意义。它是用户交互界面非常基础且常见的控件之一。


二、控件用途

复选框常用于如下场景:

  1. 用于选择是否启用某个功能
    例如:“自动登录”、“开启加速模式”、“启动时运行”。
  2. 用于确认用户协议或选项设定
    例如:“我已阅读并接受使用协议”。
  3. 用于多选列表
    与单选按钮(QRadioButton)不同,复选框允许用户同时选择多个内容,例如:
    • 选择兴趣爱好
    • 设置多个权限项
    • 多个条件过滤
  4. 用于层级结构选择(三态)
    三态模式可用于:
    • 父级是部分选中,而子级中部分选项被勾选
    • 类似系统的“全选 / 部分选 / 清空”逻辑

复选框能够清楚反映用户是否选择某个选项,适合需要明确表达选择意愿的界面设计。

三、其他补充内容

  1. 常用信号
    • toggled(bool checked):当选中状态发生改变时发出
    • stateChanged(int state):三态模式下可获取更细粒度的状态回调
    • clicked(bool checked):用户点击时触发(不论状态是否改变)
  2. 三态模式的说明
    QCheckBox 默认是两态模式,如需三态必须手动开启:
  3. checkBox->setTristate(true);
  4. checkBox->setCheckState(Qt::PartiallyChecked);

三态特别适合树形结构,比如父节点勾选时自动更新子节点的行为。

  1. 复选框和布局搭配使用
    通常复选框与 QVBoxLayout、QHBoxLayout 一起使用,可以快速形成整齐的选项组。例如:
  2. QVBoxLayout* layout = new QVBoxLayout;
  3. layout->addWidget(new QCheckBox("选项 A"));
  4. layout->addWidget(new QCheckBox("选项 B"));
  5. layout->addWidget(new QCheckBox("选项 C"));
  6. 样式与外观可定制
    QCheckBox 支持使用样式表(QSS)修改外观,例如:
    • 改变勾选图标
    • 修改文字颜色
    • 控制方框大小

创建一个复选框

首先声明变量

private:
QLineEdit* lineEdit;
QTextEdit* TextEdit;
QPlainTextEdit* PlainTextEdit;
QRadioButton *radioButton1, *radioButton2, *radioButton3, *radioButton4;
QButtonGroup* radioGroup;
QCheckBox* checkBox;

实例化控件

checkBox =newQCheckBox(this);
checkBox->setText(
"这是一个复选框");
checkBox->setGeometry(230, 100, 200, 30);

当对它点击的时候就会显示勾,表示当前复选框已被选中

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/26 12:51:24

使用Jupyter Notebook运行GLM-4.6V-Flash-WEB推理脚本的注意事项

使用 Jupyter Notebook 运行 GLM-4.6V-Flash-WEB 推理脚本的实践指南 在多模态大模型迅速普及的今天,如何快速验证一个视觉语言模型的实际能力,已成为开发者和研究人员的核心诉求。传统部署方式往往涉及复杂的环境配置、依赖管理和服务编排,极…

作者头像 李华
网站建设 2026/4/26 14:12:38

GLM-4.6V-Flash-WEB商业授权用户专享Token折扣政策

GLM-4.6V-Flash-WEB商业授权用户专享Token折扣政策 在当前AI应用快速向生产环境渗透的背景下,多模态能力正从“炫技演示”走向“真实落地”。尤其是在图文理解、视觉辅助决策和内容合规审核等场景中,企业不再满足于模型“能不能看懂图”,而是…

作者头像 李华
网站建设 2026/4/23 12:53:29

多语言场景下GLM-4.6V-Flash-WEB的表现如何?中文优先还是英文更强?

多语言场景下GLM-4.6V-Flash-WEB的表现如何?中文优先还是英文更强? 在如今全球化数字服务快速发展的背景下,一个AI模型能否在中英文之间自如切换,往往直接决定了它是否具备真正的落地能力。尤其是在跨境电商、国际化社交平台和多语…

作者头像 李华
网站建设 2026/5/6 16:31:25

Unity游戏翻译革命:XUnity Auto Translator零基础入门指南

Unity游戏翻译革命:XUnity Auto Translator零基础入门指南 【免费下载链接】XUnity.AutoTranslator 项目地址: https://gitcode.com/gh_mirrors/xu/XUnity.AutoTranslator 还在为看不懂外文游戏而烦恼吗?🤔 今天我要为你介绍一款真正…

作者头像 李华
网站建设 2026/5/1 13:48:16

房地产平台户型图解析:GLM-4.6V-Flash-WEB生成标准化房源描述

房地产平台户型图解析:GLM-4.6V-Flash-WEB生成标准化房源描述 在房产信息平台上,每天都有成千上万套新房源上线。但你有没有想过,那些看似标准、专业的“两室一厅朝南带阳台”的描述,背后往往是一群运营人员对着模糊的户型图手动打…

作者头像 李华
网站建设 2026/5/5 13:11:38

127.0.0.1在企业内网测试中的实战应用

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容: 开发一个企业级内网测试工具,功能包括:1.模拟127.0.0.1多端口服务 2.自动化测试脚本生成 3.安全漏洞扫描 4.生成测试报告 5.与CI/CD集成。使用DeepSeek模型…

作者头像 李华