滑动条:QSlider

#include<QSlider>

    QPixmap *pix2(str+"voice_scale.png");
   QSlider pSlider=new QSlider(this);
    pSlider->resize(pix2.size());//大小
    pSlider->move(45,30);//位置
    pSlider->setOrientation(Qt::Vertical);Horizontal(横)//设置滑块的横竖
    pSlider->setMinimum(-100);最小值滑块
    pSlider->setMaximum(5);//最大值滑块
    pSlider->setValue(-100);//设置当前默认值,
    pSlider->setSingleStep(1);//步长
   //前一个为滑条的图片,后一个为滑块的图片
   pSlider->setStyleSheet("QSlider::groove:vertical{border-image:url("+str+"voice_scale.png)}"                       "QSlider::handle:vertical{image:url("+str+"voice_button.png)}");
//valueChanged(int)是滑块移动时自动触发的信号,类似按钮的clicked(bool);
connect(Scene->pSlider,SIGNAL(valueChanged(int)),this,SLOT(leftVoice(int)));

局限:滑块必然比滑条的图片小,是自适应的,改变不了;
    滑块位于滑条图片的中间,自己实现不了滑块的位置偏移,

解决方案:改变滑条图片的原点,使其中点位移;

      找UI换图片 ;

猜你喜欢

转载自blog.csdn.net/qq_41672557/article/details/80248578