【QT入门】 Qt自定义控件与样式设计之QSlider用法及qss

本文介绍了如何在Qt中使用QSlider创建自定义控件,包括水平和竖直QSlider的样式设计,以及如何通过QSS样式表进行美化,同时提供了代码示例和逻辑实现要点。

往期回顾:

【QT入门】 Qt自定义控件与样式设计之QCheckBox qss实现按钮开关-CSDN博客

【QT入门】 Qt自定义控件与样式设计之QPushButton点击按钮弹出菜单-CSDN博客

【QT入门】Qt自定义控件与样式设计之QProgressBar用法及qss-CSDN博客

 【QT入门】 Qt自定义控件与样式设计之QSlider用法及qss

一、两种样式

1、水平的QSlider

2、竖直的Qslider 

 二、qss设计

1、水平qss设计

QSlider
{
 background-color: #363636; 
 border-style: outset; 
 border-radius: 10px; 
}
 
QSlider::groove:horizontal
{
 height: 12px;
 background: qlineargradient(x1:0, y1:0, x2:0, y2:1, stop:0 #B1B1B1, stop:1 #c4c4c4);
 margin: 2px 0
}
 
QSlider::handle:horizontal 
{
 background: QRadialGradient(cx:0, cy:0, radius: 1, fx:0.5, fy:0.5, stop:0 white, stop:1 green);
 width: 16px;
 height: 16px;
 margin: -5px 6px -5px 6px;
 border-radius:11px; 
 border: 3px solid #ffffff;
}

2、竖直qss设计 

QSlider 
{
 background-color: rgba(22, 22, 22, 0.7);
 padding-top: 15px;  /*上面端点离顶部的距离*/
 padding-bottom: 15px;
 border-radius: 5px; /*外边框矩形倒角*/
}
 
QSlider::add-page:vertical 
{
 background-color: #FF7826;
 width:5px;
 border-radius: 2px;
}
 
QSlider::sub-page:vertical 
{
 background-color: #7A7B79;
 width:5px;
 border-radius: 2px;
}
 
QSlider::groove:vertical 
{
 background:transparent;
 width:6px;
}
 
QSlider::handle:vertical    
{
 height: 14px;  
 width: 14px;
 margin: 0px -4px 0px -4px;
 border-radius: 7px;
 background: white;
}

groove表示选择滑块的轨道部分

background-color没有包含中间的凹槽线,只有周围的区域 

三、逻辑实现

QSlider作为一个简单的小部件,重点就在样式,需要搞明白每个样式含义,还有就是创建qss.h专门放样式表的头文件,要熟悉string xxx = R"()",原始字符串字面值这个用法,在widget类用的时候别忘了加头文件。
转换成QString要用QString::fromStdString

{
    ui->setupUi(this);

    ui->hSlider->setStyleSheet(QString::fromStdString(hQSlider_qss));
}

以上就是QSlider用法实现滑动条的基本示例。

都看到这里了,点个赞再走呗朋友~

加油吧,预祝大家变得更强!

#课程服务在线答疑:本课程设有专门的讨论留言区,学习中遇到任何问题,直接给老师留言即可,老师都会及时进行回复。远程协助:如果遇到复杂问题,老师还可进行远程协助,这个一般可不是一两百元的课程就能享受到的。源码分享:为了让大家更好的进行项目实战,老师还将课程中涉及到的所有源码分享给学员,按照视频中的提示进行下载即可。 在CSDN分享C++ Qt开发知识已经有6年了,感谢众多博友对我的支持,了解到很多人对Qt的使用还是有些困扰,例如Qt环境搭建,Qt布局的使用,如何使用Qt编写复杂的界面,如何自定义非标控件Qt如何和Web交互,Qt和后台接口如何交互等;经过这几年的整理,我决定出这套《Qt高级开发视频教程》,带领大家学习Qt高级开发知识,学习如何使用Qt开发企业级别的项目;通过本课程的学习,大家将会达到企业招聘的中高级要求。 为了照顾零基础学员,本课程第一章会介绍Qt环境搭建、QtCreator / VS2019的基本使用方法,Qt整体架构、Qt信号机制,Qt内存管理等知识。即使没有Qt开发的学习经验,也能跟着课程顺利学习。课程核心知识点地图如下:课程每章核心知识点介绍如下:第一章:介绍Qt环境搭建、QtCreator / VS2019的基本使用方法,Qt整体架构、Qt信号机制,Qt内存管理等知识。第二章:了解到很多学员对于Qt界面布局很不熟悉,将会详细介绍Qt设计器布局,以及如何C++代码手写布局,从常见的企业级项目入手,带领大家学会各种布局的实现,例如WPS、腾讯会议、优酷、迅雷等界面的实现;界面布局会了,这是企业项目开发的第一步,还有更重要的无边框窗口,如何设计一个合理的无边框窗口很重要,第三/四章:详细介绍如何实现一个无边框窗口,如何自定义标题栏,如何实现拖拽拉伸;第四章将会介绍如何自定义非标控件,优化Qt界面。第五章:介绍Qt web混合编程,一个商用项目,必然会涉及到web交互,这也是很多Qt开发者的弱项,这一章讲详细介绍C++ Qt web混合开发。第六章:既然是做企业级项目,必然需要和后台交互,http编程也是必要的,将详细介绍http编程,用户注册,登录,后台接口请求等知识;通过第五、六章的学习,将会是你的Qt开发技术更上一层楼。第七章:介绍Qt并发编程,耗时任务处理,进程调用等知识。第八、九章:讲解 Qt 比较重要的知识,图形视图结构,以及MVD模式;通过这两章的学习,大家会对图形视图有更好的了解。第十章:本章是独立章节,主要介绍Qt中一些特殊技巧,项目编译,dpi适配、多语言等知识。第十一章:是我们的企业级项目实战:实现一个视频会议客户端,本项目可以进行多人视频通话,直播,桌面分享等功能,本项目我会从零开始,进行项目搭建,功能调试,bug fixed, 带领大家做一个企业级项目。 希望通过本课程的学习,大家的C++ Qt开发技术能有质的飞越,能找到自己心仪的工作。 课程中如果讲的不对的地方,请大家指出,我及时修正,我也只是一个普通开发者,也不是所有的技术都会,尽我所能,把我所会的教给大家,让我们一起为Qt的发展,尽一份绵薄之力。  下面是本课程一些项目的截图:1 可以滑动的设置界面        2 所有图形的绘制      3 视频播放器         4 高仿youku界面        5 视频会议        相信通过本课程的学习,大家有能力实现绝大部分客户端项目,从此用C++ Qt再也不会有难写的界面。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值