[Qt基础内容-04] QCheckBox
QCheckBox
本文主要根据QT官方帮助文档以及日常使用,简单的介绍一下QCheckBox的功能以及使用
简介
QCheckBox是一个按钮,其典型的应用场景就是表示一种特性,应用可以选择启用和不启用。同样的QCheckBox也可以设置互斥(Exclusive)这个属性,具体请参看前篇[Qt 基础-03] QRadioButton
- 可以和QButtonGroup联用,将不同属性的按钮区分起来,就像官方帮助文档里描述的那样。  
- 可以像QPushButton一样,通过设置text来设置对应的快捷键 - QCheckBox *check = new QCheckBox("&Feature");
 - 这样,就设置了一个快捷键"Alt + F",代替鼠标按钮来用快捷键进行选中。 
- 三态属性 - QCheckBox有一个属性: 
 tristate : bool
 此属性用于标识QCheckBox是否是一个三态复选框。使用isTristate来判断是三态复选框、使用setTristate来设置三态属性。
 这个属性一个经典的应用场景是用在一个表格的表头,用于全选功能,当全部选中时,为选中状态;没有全部选中,就显示部分选中状态;没有选中时,就显示未选中状态。效果如下图:
  
信号
关于QCheckBox的信号和槽,除了之前说过的按钮的基本信号,如鼠标点击(clicked)等,其比较常用的是stateChanged这个信号
- stateChanged - 该信号的原型为: - void stateChanged(int state);
 - 此为CheckState中的内容 
  - 连接这个信号,根据按钮的状态执行相应的操作。 - QCheckBox *checkBox = new QCheckBox(this);
 connect(checkBox, &QCheckBox::stateChanged, [] (int state) {
 qDebug() << state;
 });
 
样式设计
QCheckBox的样式设计和之前写的QRadioButton差不多,请移步[Qt 基础-03] QRadioButton
 然后还有一个关于设置QCheckBox上的勾选框的样式,请参看这篇Qt QCheckBox设置复选框的大小
[Qt基础内容-04] QCheckBox的更多相关文章
- [Qt基础内容-08] Qt中MVC的M(Model)
		Qt中MVC的M(Model)简单介绍 Qt有自己的MVC框架,分别是model(模型).view(视图).delegate(委托),这篇文章,简单的介绍以下Qt中有关model(模型)的类以及一些基 ... 
- JavaScript基础入门04
		目录 JavaScript 基础入门04 JavaScript 对象 介绍 关于键名 对象的引用 语句和表达式需要注意的地方 对象属性常见的操作 with语句 JSON 特点 语法规则 JSON合法示 ... 
- 034 01 Android 零基础入门  01 Java基础语法 04 Java流程控制之选择结构 01 流程控制概述
		034 01 Android 零基础入门 01 Java基础语法 04 Java流程控制之选择结构 01 流程控制概述 本文知识点:Java中的流程控制相关概念的认识 三大流程控制语句结构的简介 顺序 ... 
- 自动化kolla-ansible部署ubuntu20.04+openstack-victoria之基础配置-04
		自动化kolla-ansible部署ubuntu20.04+openstack-victoria之基础配置-04 欢迎加QQ群:1026880196 进行交流学习 近期我发现网上有人转载或者复制原创博 ... 
- iOS系列 基础篇 04 探究视图生命周期
		iOS系列 基础篇 04 探究视图生命周期 视图是应用的一个重要的组成部份,功能的实现与其息息相关,而视图控制器控制着视图,其重要性在整个应用中不言而喻. 以视图的四种状态为基础,我们来系统了解一下视 ... 
- 基于C/S架构的3D对战网络游戏C++框架_04客户端详细设计与OpenGL、Qt基础
		本系列博客主要是以对战游戏为背景介绍3D对战网络游戏常用的开发技术以及C++高级编程技巧,有了这些知识,就可以开发出中小型游戏项目或3D工业仿真项目. 笔者将分为以下三个部分向大家介绍(每日更新): ... 
- IO基础内容(File)
		JavaIO基础内容 IO技术概述 Output 把内存中的数据存储到持久化设备上这个动作称为输出(写)Output操作 Input 把持久设备上的数据读取到内存中的这个动作称为输入(读)Input操 ... 
- ROS_Kinetic_09 ROS基础内容(四)
		ROS_Kinetic_09 ROS基础内容(四) 参考网址: http://wiki.ros.org/cn/ROS/Tutorials/UsingRosEd http://wiki.ros.org/ ... 
- ROS_Kinetic_06 ROS基础内容(三)
		ROS_Kinetic_06 ROS基础内容(三) 先插入一段闲话,关于android的碎片化,无非集中于版本过多,型号各异,品牌杂乱等,似乎这是开源软件无法摆脱的宿命,ROS似乎也在这条路上越走越远 ... 
- ROS_Kinetic_05 ROS基础内容(二)
		ROS_Kinetic_05 ROS基础内容(二) 1. ROS节点node 官网教程:http://wiki.ros.org/cn/ROS/Tutorials/UnderstandingNodes ... 
随机推荐
- hive表元数据读取不到
			MetaException(message:java.lang.UnsupportedOperationException: Storage schema reading not supported) ... 
- Java代码打成jar后 classgetClassLoadergetResource("")返回为null
			用maven打成jar包后,Main.class.getClassLoader().getResource("")为null. 示例: public static void mai ... 
- centOS7安装nginx及nginx配置
			安装所需插件1.安装gccgcc是linux下的编译器在此不多做解释,感兴趣的小伙伴可以去查一下相关资料,它可以编译 C,C++,Ada,Object C和Java等语言 命令:查看gcc版本 gcc ... 
- 区分PO、VO、 BO、 DTO、 POJO
			分层领域模型规约: DO(Data Object):此结构与数据库表结构一一对应,通过DTO向上传输数据源对象. DTO(Data Transfer Object):数据传输对象,Service ... 
- 跟着源码学IM(九):基于Netty实现一套分布式IM系统
			本文作者小傅哥,原题"使用DDD+Netty,开发一个分布式IM(即时通信)系统".为了提升阅读体验,有大量修订和改动,感谢原作者. 0.系列文章 <跟着源码学IM(一):手 ... 
- Android增加USB Camera摄像头驱动支持
			一般情况下kernel需要添加以下宏 ================================= CONFIG_VIDEO_DEV=yCONFIG_VIDEOBUF2_CORE=yCONFIG ... 
- 基于STC8G1K08的CH549单键进入USB下载模式实验
			一.实验原因 CH552或CH549进入USB下载,通常需要两个按键,一个控制电源的通断,一个通过串联电阻(一头接VCC或V33)冷启动时抬高UDP电平.时序上是这样的:断电--按下接UDP的轻触开关 ... 
- 实现windows下简单的自动化窗口管理
			转载或者引用本文内容请注明来源及原作者 一.问题描述 用户的应用场景非常简单:一个无主播的线上弹幕游戏,需要定时开启和关闭直播,直播平台是在Windows端的某播伴侣. 二.分析需求 首先需要定时任务 ... 
- 连接Redis 错误的解决方法: It was not possible to connect to the redis server(s); to create a disconnected multiplexer
			The error you are getting is usually a sign that you have not set abortConnect=false in your connect ... 
- SpringCloud Alibaba(一) - Nacos 服务注册与发现,OpenFeign远程调用
			1.基础项目过目介绍 1.1 数据库创建 1.2 项目模块分布 1.3 测试http接口调用 1.3.1 http接口调用配置类 //http接口调用配置类 @Configuration public ... 
