我正在使用一个 QSpinBox,可用于输入 0 到 33 之间的值。默认值为零。如果我使用键盘输入数字,它会保留前导零,这很烦人。
示例:我想通过键盘输入 23
我输入“2”——旋转框的值变为“02”
我输入“3” - 没有任何反应 - 旋转框已满
如何防止这种行为?
谢谢
我对 QDoubleSpinBox 也有类似的问题,其中尾随零使编辑不方便。
我通过重新实现 QDoubleSpinBox::textFromValue() 来修剪零点来解决它。
在侦听器中添加一行代码valueChanged
以删除前导零。
if (mySpinBox.value.length() > 1 && mySpinBox.value[0] == '0')
{
mySpinBox.value = mySpinBox.value.remove(0, 1);
}