Qt之滑动条和进度条(QSlider、QProgressBar)

简介: Qt之滑动条和进度条(QSlider、QProgressBar)

前言

在用户界面设计中,滑动条和进度条是常见的控件。Qt中提供了QProgressBar和QSlider两个类来实现滚动条和滑动条。


一、QSlider

在Qt中,QSlider是一个用于设置值的控件。它可以用于音频和视频应用程序中的音量控制、视频播放器中的进度条控制,还可以用于显示一定范围内的整数或浮点数。QSlider类具有以下特征:


它是QWidget的子类。

它可以出现在水平和垂直方向上。

可以设置最大和最小值。

可以显示当前值。

可以设置步骤或单元大小。


在Qt中有两种进度条,我们通过设置属性就可以在他们之间变化:


  • horizontalSlider
  • verticalSlider
    他们几乎是一样使用的。


3ebccbdf44274d5fba99c84e4c1110a3.png


7e2a75c82ab24101bf7f1a50dcd3367d.png

QSlider的常用API

  1. 构造函数
QSlider(QWidget * parent)
  1. 最大值和最小值
void setMinimum(int min)//设置最小值
void setMaximum(int max)//设置最大值
void setRange(int min, int max)//设置范围,默认为0~99
int minimum() const//返回最小值
int maximum() const//返回最大值
  1. 当前值
void setValue(int value)//设置当前值
int value() const//返回当前值
  1. 步长
    默认步长为1,在QSlider中,当鼠标在他上面时,我们可用通过小键盘的左右/上下调整值,当我们点击左右后,他就会加step个值
void setSingleStep(int step)
int singleStep() const
  1. 检测是否按下滑块
bool isSliderDown();//返回用户是否滑块按下滑块

6.进度条的方向

// 获取和设置滑动条的方向
Qt::Orientation orientation() const;
void setOrientation(Qt::Orientation);


方向有如下两种:

方向 value
Qt::Horizontal 0x1
Qt::Vertical 0x2


信号与槽

valueChanged()//值被改变
sliderPressed()//滑块被点击
sliderMoved()//滑块移动
sliderReleased();//滑块被释放

二、QProgressBar


在各种应用程序中,进度条是一种非常常见的控件,通常用于显示任务的进行情况,比如文件上传和下载、批量操作等。在Qt中,QProgressBar是用于实现进度条的类。本文将介绍QProgressBar的一些常用属性和方法,以帮助您快速构建出各种进度条。


在Qt中,进度条用于显示任务的进度情况。QProgressBar是用于实现进度条的类,它具有以下特性:


它是QWidget的子类。
可以在水平方向和垂直方向上显示。
可以显示进度文本。

滑动条和滚动条的常用API


1.构造函数

这个构造函数有很多重载,其中最常用的是第一个版本。这个版本不指定最小值和最大值,它们默认为0和100。第二个版本用于指定范围内的值。


QProgressBar(QWidget * parent = nullptr)//只指定父类
QProgressBar(int minimum, int maximum, QWidget * parent = nullptr)//指定最小值,最大值和父类

2.最小值和最大值

void setMinimum(int min)//设置最小值
void setMaximum(int max)//设置最大值
int minimum() const//返回最小值
int maximum() const//返回最大值
void setRange(int min, int max)//设置范围,默认为0~99

当min和max都为0时,他就会开始滚动:

64959e7f1fe940f4b4930d43070b4a8b.png


3.当前值

void setValue(int value)//设置当前值
int value() const//返回当前值

4.文本显示

void setTextVisible(bool visible)//是否显示进度文本
bool isTextVisible() const//返回是否显示进度文本
void setFormat(const QString & format)//格式化进度文本
QString format() const//返回格式化进度文本
void setAlignment(Qt::Alignment alignment)//设置对齐
Qt::Alignment alignment() const//返回对齐

总结

在用户界面设计中,滑动条和进度是常见的控件。

QProgressBar是Qt中的一个进度条控件,它可以用于显示任务的进行状态,例如文件上传和下载、批量处理等。

QSlider是Qt中的一个滑动条控件,它可以用于向用户显示数值和允许用户通过拖动滑块来选择数值。在QSlider中,用户可以通过鼠标或者键盘来操作滑块的位置,从而改变当前的数值。

Qt中提供了QProgressBar和QSlider两个类来实现滚动条和进度条。


相关文章
|
4月前
|
C++
基于QT实现的拷贝文件以及实时进度条(简易版)
1.基于按钮或者菜单栏的槽里去写逻辑函数(我这边用的是菜单栏),ui实现的进度条 2.创建两个对象,一个是源文件,一个是目标文件分别用getopenfileName、getsavefileName函数即可。 3.利用QFile类去实现对两个文件的创建,因为QFile中可以获取文件的属性已经读写等。 4.循环的去读取源文件中的数据,然后写入目标文件
485 6
《QT从基础到进阶·二十七》进度条QProgressBar
《QT从基础到进阶·二十七》进度条QProgressBar
166 0
|
存储 Cloud Native Linux
Qt QSlider样式
Qt QSlider样式
QT圆形进度条(QT桌面项目光照强度检测)
QT圆形进度条(QT桌面项目光照强度检测)
107 0
|
存储 编解码 计算机视觉
项目实战:Qt+OpenCV视频播放器(支持播放器操作,如暂停、恢复、停止、时间、进度条拽托等)
项目实战:Qt+OpenCV视频播放器(支持播放器操作,如暂停、恢复、停止、时间、进度条拽托等)
项目实战:Qt+OpenCV视频播放器(支持播放器操作,如暂停、恢复、停止、时间、进度条拽托等)
基于Qt的音乐播放器(一)添加音频文件,播放音乐,更新进度条
基于Qt的音乐播放器(一)添加音频文件,播放音乐,更新进度条
基于Qt的音乐播放器(一)添加音频文件,播放音乐,更新进度条
QT软件开发: 设置QSlider样式
QT软件开发: 设置QSlider样式
620 0
QT软件开发: 设置QSlider样式
Python Qt GUI设计:QSlider滑动条类(基础篇—16)
Python Qt GUI设计:QSlider滑动条类(基础篇—16)
Python Qt GUI设计:QSlider滑动条类(基础篇—16)
|
4月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
180 1
Qt(C++)开发一款图片防盗用水印制作小工具

推荐镜像

更多