【Qt 学习笔记】Qt常用控件 | 输入类控件 | Slider的使用及说明

简介: 【Qt 学习笔记】Qt常用控件 | 输入类控件 | Slider的使用及说明

Qt常用控件 | 输入类控件 | Slider的使用及说明

一、QSlider介绍

1. 简介

QSlider是Qt框架中的一个控件,用于实现滑动条的功能。滑动条是用户界面中的常用控件之一,可以通过拖动滑块来选择一个值,或者通过点击滑条上的位置来快速定位。


2. 核心属性

image.png

3. 核心信号

属性 说明
valueChanged(int) 数值改变时触发
rangeChanged(int, int) 范围变化时触发

二、QSlider的使用(代码示例)

1. 调整窗口大小

  1. 在界面中创建两个滑动条,一个是水平的一个垂直的
  2. 将垂直的滑动条勾选
  3. 在构造函数中编写两个滑动条的初始
Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);
    ui->horizontalSlider->setMinimum(100);
    ui->horizontalSlider->setMaximum(2000);
    ui->horizontalSlider->setValue(800);
    ui->horizontalSlider->setSingleStep(50);
    ui->verticalSlider->setMinimum(100);
    ui->verticalSlider->setMaximum(2000);
    ui->verticalSlider->setValue(800);
    ui->verticalSlider->setSingleStep(50);
}

4.点击滚动条生成槽函数,选择如下图所示

5.编写上述槽函数

void Widget::on_horizontalSlider_valueChanged(int value)
{
    //获取界面的坐标
    const QRect& rect = this->geometry();
    //设置界面随滚动条变化
    this->setGeometry(rect.x(),rect.y(),value,rect.height());
}

void Widget::on_verticalSlider_valueChanged(int value)
{
    const QRect& rect = this->geometry();
    this->setGeometry(rect.x(),rect.y(),rect.width(),value);
}

6.运行代码,查看结果,随着滑动条的滚动窗口随着改变


2. 自定义快捷键调整滑动条位置

设置"-“减小value,设置”+"增加value

默认情况下滑动条可以通过 方向键 或者 pageUp / pageDown 调整大小

1.在界面上创建滑动条和label

2. 在构造函数中初始化滑动条

Widget::Widget(QWidget *parent)
 : QWidget(parent)
 , ui(new Ui::Widget)
{
   ui->setupUi(this);
   ui->label->setText("");
   ui->horizontalSlider->setMinimum(0);
   ui->horizontalSlider->setMaximum(100);
   ui->horizontalSlider->setSingleStep(10);
   ui->horizontalSlider->setValue(0);
}
  1. 创建滑动条槽函数,随着改变把当前值打印到label上
void Widget::on_horizontalSlider_valueChanged(int value)
{
    ui->label->setText("当前值:"+QString::number(value));
}
  1. 增加快捷键,使用QShortCut类设置快捷键快捷键触发时, 会发出 QShortcut::activated 信号, 连接到自定义的槽函数

Widget::Widget(QWidget *parent)
    : QWidget(parent)
    , ui(new Ui::Widget)
{
    ui->setupUi(this);

    ui->label->setText("当前值:0");
    ui->horizontalSlider->setMinimum(0);
    ui->horizontalSlider->setMaximum(100);
    ui->horizontalSlider->setSingleStep(5);
    ui->horizontalSlider->setValue(0);


    //使用快捷键,要用到QShortcut类
    //需要两个快捷键,-减少+增加(=和+是同一个)
    QShortcut* shortcut1=new QShortcut(this);
    shortcut1->setKey(QKeySequence("-"));
    QShortcut* shortcut2=new QShortcut(this);
    shortcut2->setKey(QKeySequence("="));

    //使用信号槽,感知快捷键被按下
    connect(shortcut1,&QShortcut::activated,this,&Widget::subValue);
    connect(shortcut2,&QShortcut::activated,this,&Widget::addValue);
}

5.运行代码,查看结果

目录
相关文章
|
16天前
Qt类结构分析
Qt类结构分析
38 3
|
29天前
|
网络协议 Linux C++
【Qt】多种控件实现“hello world“
【Qt】多种控件实现“hello world“
|
11天前
|
设计模式 前端开发 安全
Qt注册类对象单例与单类型区别
在进行开发时,应当根据具体的应用场景和需求来选择使用单例模式或是单类型。如果是全局服务或状态管理,可能需要单例模式;如果是为了使QML环境下的不同组件能够访问到同一个后端服务对象,则可能需要使用单类型。
15 2
|
29天前
|
前端开发 程序员 API
【Qt】控件介绍
【Qt】控件介绍
|
1月前
|
开发者
【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
【Qt 学习笔记】Qt系统相关 | Qt事件 | 事件的介绍及基本概念
120 4
|
1月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 文件对话框QFileDialog
264 4
|
1月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 输入对话框QInputDialog
71 3
|
1月前
|
数据可视化
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 字体对话框QFontDialog
40 3
|
1月前
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
【Qt 学习笔记】Qt窗口 | 标准对话框 | 颜色对话框QColorDialog
167 3
|
2月前
|
数据安全/隐私保护 C++ 计算机视觉
Qt(C++)开发一款图片防盗用水印制作小工具
文本水印是一种常用的防盗用手段,可以将文本信息嵌入到图片、视频等文件中,用于识别和证明文件的版权归属。在数字化和网络化的时代,大量的原创作品容易被不法分子盗用或侵犯版权,因此加入文本水印成为了保护原创作品和维护知识产权的必要手段。 通常情况下,文本水印可以包含版权声明、制作者姓名、日期、网址等信息,以帮助识别文件的来源和版权归属。同时,为了增强防盗用效果,文本水印通常会采用字体、颜色、角度等多种组合方式,使得水印难以被删除或篡改,有效地降低了盗用意愿和风险。 开发人员可以使用图像处理技术和编程语言实现文本水印的功能,例如使用Qt的QPainter类进行文本绘制操作,将文本信息嵌入到图片中,
129 1
Qt(C++)开发一款图片防盗用水印制作小工具