如何获得QSlider条在Qt中的位置?

时间:2019-06-03 07:45:31

标签: c++ qt qslider qabstractslider

我在Qt应用程序中使用QSlider对象,我想在移动它时获取滑块的位置。我尝试使用pos()函数,但它总是返回具有相同 x y 值的QPoint()(我想它返回左上角的位置)滑块的角):

ui->horizontalSlider->pos();

然后我尝试将滑条的宽度除以100,然后将乘以滑条value()的值添加到最左侧:

SliderStep = ui->horizontalSlider->width()/100;

(ui->horizontalSlider->value()) * SliderStep + ui->horisontalSlider->geometry().x();

对我来说有点用,但是值不是很准确,因为SliderStep必须为 double ,坐标为整数 。我总是注意到,我可以使用value()sliderPosition()函数来获得滑块值,因为它们总是为我返回相同的值:

qDebug()<<ui->horizontalSlider->sliderPosition();
qDebug()<<ui->horizontalSlider->value();

所以,我的问题是:是否有更方便或“正确”的方法来获取滑块的坐标?这两个功能有什么区别?任何帮助表示赞赏。

0 个答案:

没有答案