news 2026/10/15 6:31:55

QToolBox+QSS 垂直版本的QTabWidget

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
QToolBox+QSS 垂直版本的QTabWidget

QToolBox简直可以说是QTabWidget的同门师兄弟,QTabWidget是主攻横向,而QToolBox是主攻竖向。

伪状态数量虽不及QTabWidget,但也都有:
:only-one 只有一个Tab时
:first 第一个Tab
:last 最后一个Tab
:middle 中间的Tab
:previous-selected 当前选中的前一个Tab
:next-selected 当前选中的后一个Tab
:selected 当前选中的Tab

分页子控件:
::tab

高对比一
QToolBox::tab:previous-selected{ background-color: red; } QToolBox::tab:next-selected{ background-color: green; } QToolBox::tab:selected { background-color: blue; color: white; }

可以明显看到显示上有点BUG,不知道是不是用得这个Qt版本有问题呢,本豆也不晓得呀!

高对比二
QToolBox::tab:first{ background-color: #1E90FF; } QToolBox::tab:last{ background-color: #9932CC; } QToolBox::tab:middle{ background-color: #32CD32; } QToolBox::tab:selected{ background-color: blue; color: white; }

这些伪状态倒还好,均可以按照预期显示。

简单样式
QToolBox { background-color: none; border: none; } QToolBox::tab { background-color: #e0e0e0; border-radius: 3px; padding: 1px 12px; margin: 2px; } QToolBox::tab:selected { background-color: #2196F3; color: white; font-weight: bold; } QToolBox::tab:hover:!selected { background-color: #bdbdbd; }

效果展示

功能

不过功能上没啥可圈可点的地方,也都是常用的添加个页,插入个页,删除个页,设置个图标等等这些啦。

这个控件名字就叫工具箱,正如其名,也就需要展示工具的时候,才会想起来用用它。但是它身子太胖,占用的空间实在是太多了,用到它的地方也着实不多。

Tab之间有默认间距,而这些间距其实是垂直布局搞得鬼,所以如果想修改间距的话,可以改改布局的spacing。

QVBoxLayout* lay = qobject_cast<QVBoxLayout*>(ui->toolBox->layout()); lay->setSpacing(0);

看,这样tab就紧紧贴在一起了!

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

C#异步编程:Task vs 传统线程效率对比

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个C#性能测试项目&#xff0c;比较Thread和Task在以下场景的表现&#xff1a;1) 创建1000个轻量级任务&#xff1b;2) IO密集型操作&#xff1b;3) CPU密集型计算。输出详细…

作者头像 李华
网站建设 2026/10/14 16:50:44

5分钟快速搭建Kafka原型验证想法

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个极简Kafka原型系统&#xff0c;包含&#xff1a;1) 最小化的Kafka下载包&#xff08;仅核心组件&#xff09;&#xff1b;2) 预配置好的单节点环境&#xff1b;3) 示例测试…

作者头像 李华
网站建设 2026/10/12 20:30:27

企业级JDK17升级实战:从下载到迁移的全流程指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个企业级JDK17升级工具包&#xff0c;包含&#xff1a;1. 多线程下载器&#xff08;支持断点续传&#xff09;2. 依赖库兼容性扫描工具 3. JVM参数转换器&#xff08;将JDK8…

作者头像 李华
网站建设 2026/10/14 16:01:07

零基础在Ubuntu安装配置VSCode完全指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 编写一个面向Linux新手的VSCode安装配置教程。要求&#xff1a;1. 详细说明Ubuntu软件中心安装和手动安装两种方法&#xff1b;2. 基本界面介绍&#xff1b;3. 创建第一个项目&…

作者头像 李华
网站建设 2026/10/13 20:48:52

SGLang-v0.5.6隐私保护方案:云端独立实例,数据不留存

SGLang-v0.5.6隐私保护方案&#xff1a;云端独立实例&#xff0c;数据不留存 引言&#xff1a;医疗数据处理的隐私困境 想象你是一名医生&#xff0c;手上有大量患者病历需要分析。这些数据包含敏感信息&#xff0c;直接上传到公有云就像把病历本放在公共图书馆——虽然方便&…

作者头像 李华
网站建设 2026/10/15 3:54:02

AI如何帮你优化WLK防骑天赋?一键生成最佳配置

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个WLK防骑天赋分析器&#xff0c;要求&#xff1a;1. 输入玩家装备等级、团队定位(主坦/副坦)和副本类型(RAID/5人本) 2. 基于历史数据和模拟结果推荐3套天赋方案 3. 显示每…

作者头像 李华