我正在尝试使用QSlider,但如果有人点击位置X,他想要将滑块放在哪里,滑块总是先将值设置为最大值或最小值,然后再设置为值X.所以有一个不必要的进入下一步.我该如何避免这一步?
我在QTDesigner的帮助下实现了滑块.其余设置的代码如下:
_ui->horizontalSlider->setRange(1, aMaximalValue);
_ui->horizontalSlider->setValue(theCurrentValue);
connect(_ui->horizontalSlider, SIGNAL(valueChanged(int)), this, SLOT(onValueOfSliderChanged(int)));
Run Code Online (Sandbox Code Playgroud)
小智 4
当使用 QSlider 时,我的经验表明,当您单击滑块中当前位置右侧的某个位置(考虑水平滑块)时,它将按 pageStep 大小增加滑块值。同样,如果单击值位于当前位置的左侧,则滑块值将减少 pageStep 大小。仅当您将滑块拖动到该位置时,它才会将值设置为您想要的值,而不是单击时。尝试设置 pageStep 大小以查看这是否是问题所在。