可以在一个范围内拖动。
常用属性和方法
值
包括当前值、最大值、最小值
// 获取和设置当前值
int value() const;
void setValue(int);// 获取和设置最大值
int maximum() const;
void setMaximum(int);// 获取和设置最小值
int minimum() const;
void setMinimum(int);// 一次设置最大值和最小值
void setRange(int min, int max)
方向
滑动条分水平滑动条和垂直滑动条(默认的方向是垂直的)
// 获取和设置滑动条的方向
Qt::Orientation orientation() const;
void setOrientation(Qt::Orientation);
步长
滑动条有两种步长
singleStep
:是指按键盘的左右箭头(←/→)时的步长pageStep
:是指点击滑块两侧时的步长
// 获取和设置singleStep
int singleStep() const;
void setSingleStep(int);// 获取和设置pageStep
int pageStep() const;
void setPageStep(int);
常用信号
// 当滑块被按下时发射该信号
void sliderPressed();// 当滑块移动时发射该信号
void sliderMoved(int value);// 当滑块释放时发射该信号
void sliderReleased();// 当滑动条的值改变时,发射该信号
void valueChanged(int value);
举例:
#ifndef WIDGET_H
#define WIDGET_H#include <QWidget>
#include<QLineEdit>
#include<QSlider>
#include<QVBoxLayout>class Widget : public QWidget
{Q_OBJECTpublic:Widget(QWidget *parent = nullptr): QWidget(parent){resize(300,300);slider=new QSlider(this);slider->setRange(0,100);slider->setOrientation(Qt::Horizontal);//设置滑动条为水平方向slider->setSingleStep(1);//设置键盘左右键操作滑动条时的步长slider->setPageStep(10);//设置点击滑块2侧时滑动条的步长edit=new QLineEdit(this);QVBoxLayout* v_box=new QVBoxLayout(this);v_box->addWidget(slider);v_box->addWidget(edit);//slider绑定槽函数connect(slider,&QSlider::valueChanged,this,[=](){QString info="滑动条的当前值为:"+QString::number(slider->value());edit->setText(info);});}~Widget()=default;
private:QSlider* slider;QLineEdit* edit;
};
#endif // WIDGET_H
学习链接:https://github.com/0voice