云计算百科
云计算领域专业知识百科平台

Qt常用控件之QDial和QSlider

Qt常用控件之QDial

  • 1.QDial简介
  • 2.QDial的使用
  • 3.QSlider简介
  • 4.使用QSlider调整窗口大小
  • 5.使用快捷键控制QSlider

🌟🌟hello,各位读者大大们你们好呀🌟🌟 🚀🚀系列专栏:【Qt的学习】 📝📝本篇内容:QDial简介;QDial的使用;QSlider简介;使用QSlider调整窗口大小;使用快捷键控制QSlider ⬆⬆⬆⬆上一篇:Qt多元素控件之QListWidget 💖💖作者简介:轩情吖,请多多指教(>> •̀֊•́ ) ̖́-

1.QDial简介

QDail是一个旋钮控件,可以使用鼠标拖动旋钮旋转 在这里插入图片描述 它的使用比较简单,直接介绍它的一些使用函数和信号

函数声明函数说明
void setValue(int) 设置它当前的值
void setMaximum(int) 设置最大值
void setMinimum(int) 设置最小值
void setSingleStep(int) 按下⽅向键的时候改变的步⻓
void setPageStep(int) 按下 pageUp / pageDown 的时候改变的步⻓
void setSliderPosition(int) 界⾯上旋钮显示的初始位置,其实和setValue一样
void setTracking(bool enable) 外观是否会跟踪数值变化,默认值为 true,⼀般不需要修改
void setWrapping(bool on) 是否允许循环调整,即数值如果超过最⼤值, 是否允许回到最⼩值(调整过程能否 “套圈”)
bool notchesVisible() const 是否显示刻度线
void setNotchTarget(double target) 刻度线之间的相对位置;数字越⼤, 刻度线越稀疏
信号声明信号说明
void QAbstractSlider::valueChanged(int value) 数值改变时触发
void QAbstractSlider::rangeChanged(int min, int max) 范围变化时触发

2.QDial的使用

我们可以通过它来实现一个小功能,通过旋转来调节我们的不透明度(1是完全不透明,0是完全透明),这就涉及到前面的知识了,也就是Widget的函数setWindowOpacity 在这里插入图片描述 在这里插入图片描述 在这里插入图片描述

3.QSlider简介

QSlider是滑动条,它其实和QDial同宗同源,它们都是继承于QAbstractSlider,所以说功能都类似,很多函数也是一样的 在这里插入图片描述

函数声明函数说明
void setValue(int) 设置它当前的值
void setMaximum(int) 设置最大值
void setMinimum(int) 设置最小值
void setSingleStep(int) 按下⽅向键的时候改变的步⻓
void setPageStep(int) 按下 pageUp / pageDown 的时候改变的步⻓
void setSliderPosition(int) 界⾯上旋钮显示的初始位置,其实和setValue一样
void setTracking(bool enable) 外观是否会跟踪数值变化,默认值为 true,⼀般不需要修改
void setOrientation(Qt::Orientation) 设置滑动条的⽅向是⽔平还是垂直,Qt::Horizontal和Qt::Vertical
void setInvertedAppearance(bool) 设置是否要翻转滑动条的⽅向
void setTickPosition(QSlider::TickPosition position) 设置刻度的位置
void setTickInterval(int ti) 设置刻度的密集程度
信号声明信号说明
void QAbstractSlider::valueChanged(int value) 数值改变时触发
void QAbstractSlider::rangeChanged(int min, int max) 范围变化时触发

4.使用QSlider调整窗口大小

我们可以使用两个滑动条来调整窗口的长度和高度,两个滑动条分别是水平滑动条和垂直滑动条 ,水平滑动条调整长度,垂直滑动调整高度。 在这里插入图片描述 在这里插入图片描述 在代码中还设置了方向键的步长,我们也可以通过方向键来调整在这里插入图片描述

5.使用快捷键控制QSlider

我们可以设置两个快捷键来控制滑动条的左滑和右滑,例如我们就使用键盘上的“+” “-”,但是我们的+是和“=”在一起的,使用“+”时需要同时摁shift,因此为了方便,这边直接使用“=” 在图形化界面使用一个滑动条和一个标签,标签负责显示当前的值 在这里插入图片描述

#include "widget.h"
#include "ui_widget.h"
#include <QShortcut>

Widget::Widget(QWidget *parent)
: QWidget(parent)
, ui(new Ui::Widget)
{
ui->setupUi(this);
//创建两个快捷键+-来控制滑动条
QShortcut* cut1=new QShortcut(this);
QShortcut* cut2=new QShortcut(this);
cut1->setKey(QKeySequence("-"));
cut2->setKey(QKeySequence("="));

//将快捷键和滑动条的滑动关联上
connect(cut1,&QShortcut::activated,this,&Widget::subValue);
connect(cut2,&QShortcut::activated,this,&Widget::addValue);

}
Widget::~Widget()
{
delete ui;
}

void Widget::subValue()
{
//对滑动条进行减
int value=ui->horizontalSlider->value();
if(value<=ui->horizontalSlider->minimum())
{
return;
}
ui->horizontalSlider->setValue(value5);
}

void Widget::addValue()
{
//对滑动条进行加
int value=ui->horizontalSlider->value();
if(value>=ui->horizontalSlider->maximum())
{
return;
}
ui->horizontalSlider->setValue(value+5);

}

void Widget::on_horizontalSlider_valueChanged(int value)
{
QString str("当前的值为:");
str+=QString::number(value);
ui->label->setText(str);
}

创建两个快捷键控件,并分别进行信号和槽的绑定,信号是activited,当用户输入快捷键的按键序列时,会发出此信号。当触发信号后,会调用增加滑动条数值或减少滑动条数值的函数 在这里插入图片描述 上面的是使用快捷键操作的

🌸🌸Qt常用控件之QDial和QSlider大概就讲到这里啦,博主后续会继续更新更多Qt的相关知识,干货满满,如果觉得博主写的还不错的话,希望各位小伙伴不要吝啬手中的三连哦!如有小伙伴需要Qt的安装包可以私信我,你们的支持是博主坚持创作的动力!💪💪

赞(0)
未经允许不得转载:网硕互联帮助中心 » Qt常用控件之QDial和QSlider
分享到: 更多 (0)

评论 抢沙发

评论前必须登录!