QSlider 是一个滑块组件,常用于播放视频的状态栏,显示视频播放的进度;
它的样式当然也是可以改变的,关于它的详细介绍可以参考:Qt 之 QSlider
这里主要演示以下常用信号:
sliderMoved(int) //拖动滑块时触发 valueChanged(int) //滑块值改变时触发 sliderPressed() //按压滑块时触发 sliderReleased() //松开滑块时触发
1、打开QT,创建一个 widget 项目,在UI中加入滑块和按钮
滑块共有两种,一种是水平的,一种是垂直的,它们的区别只是放置的方向不同而已
这里主要演示水平滑块,所以修改了水平滑块的最大值、鼠标移动和键盘移动的参数,垂直滑块保持默认的参数
2、以下是演示代码,其中定义了5个槽函数,这里的代码是写在 widget.cpp 中的
Click() 槽函数绑定的是 按钮的点击事件
其他的槽函数绑定的滑块的值改变、移动、按压、释放事件
#include "widget.h"
#include "ui_widget.h"
#include <QDebug>
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
}
void Widget::Click()
{
// 获取滑块当前值
int value = ui->horizontalSlider->value();
// 将滑块当前值+10 写入进去
ui->horizontalSlider->setValue(value + 10);
}
// 滑块值改变后触发
void Widget::Change(int value)
{
// 获取滑块当前值
qDebug() << "Change value = " << ui->horizontalSlider->value();
}
// 滑块移动时就触发
void Widget::Move(int value)
{
qDebug() << "Move value = " << ui->horizontalSlider->value();
}
// 按压滑块时触发
void Widget::Press()
{
qDebug() << "Press value = " << ui->horizontalSlider->value();
}
// 松开时触发
void Widget::Releas()
{
qDebug() << "Releas value =" << ui->horizontalSlider->value();
}
Widget::~Widget()
{
delete ui;
}
3、演示效果
Change()绑定的是值改变触发事件,我们可以看到,它主要可以通过拖动滑块、键盘移动滑块、点击滑块左侧或右侧、还有被其他槽函数改变滑块值而触发
Move()绑定的是拖动滑块事件,这里注意的是,在按下滑块拖动的时候,它的触发是在值改变之前
按压和释放就是对滑块进行按压或释放时,各触发一次
文章来源:https://www.toymoban.com/news/detail-617972.html
文章来源地址https://www.toymoban.com/news/detail-617972.html
到了这里,关于QT基础:QSlider 滑块的简单演示的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!