news 2026/6/21 22:34:15

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/6/20 12:45:30

Windows电脑玩转SGLang:云端方案解决CUDA兼容难题

Windows电脑玩转SGLang&#xff1a;云端方案解决CUDA兼容难题 引言&#xff1a;为什么Windows用户需要云端方案&#xff1f; 如果你是一位Windows用户&#xff0c;想要尝试SGLang&#xff08;一种高效的大语言模型推理框架&#xff09;&#xff0c;可能已经被它的Linux依赖和…

作者头像 李华
网站建设 2026/6/14 1:50:13

KNIFE4J与AI结合:智能API文档生成新体验

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 创建一个基于KNIFE4J的智能API文档生成工具&#xff0c;能够自动解析Java代码中的Swagger注解&#xff0c;并生成美观、规范的API文档。要求支持多种AI模型&#xff08;如Kimi-K2、…

作者头像 李华
网站建设 2026/6/13 5:54:30

SpringCloud面试小白入门指南

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 开发一个面向初学者的SpringCloud面试学习应用&#xff0c;要求&#xff1a;1. 使用对话式交互引导学习 2. 每个概念配动态示意图 3. 提供可修改的代码沙盒 4. 包含基础到进阶的梯…

作者头像 李华
网站建设 2026/6/21 0:53:50

过量Cadence的license的资源优化利用

过量Cadence的license资源优化利用——怎么在不违反规则的前提下提高效率作为一名经常接触Cadence设计工具的工程师&#xff0c;我经常遇到一个令人头疼的问题&#xff1a;license资源紧张。是在项目高峰期&#xff0c;系统资源被大量占用&#xff0c;导致很多人不得不排队申请…

作者头像 李华
网站建设 2026/6/15 21:29:17

15分钟构建Qt插件诊断工具原型

快速体验 打开 InsCode(快马)平台 https://www.inscode.net输入框内输入如下内容&#xff1a; 快速开发一个Qt插件诊断工具原型&#xff0c;核心功能&#xff1a;1) 基本插件路径检测&#xff1b;2) 简单环境变量检查&#xff1b;3) 基本错误报告生成&#xff1b;4) 最小化GU…

作者头像 李华