pyqt QDoubleSpinBox始终调整为整数

时间:2013-10-11 11:10:53

标签: pyqt qt4.8 qspinbox

我使用pyqt并有两个QDoubleSpinBox用于定义间隔。通常,这些间隔是整数,例如,摄氏度。根据用例我切换范围,步长,单位等。一个案例涉及电压,需要十进制,所以我总是使用QDoubleSpinBox但减少小数和步长对应整数。以下是电压情况的摘录:

    self.to_spin.setDecimals(2)
    self.from_spin.setDecimals(2)
    self.to_spin.setSuffix(" V")
    self.from_spin.setSuffix(" V")
    self.to_spin.setSingleStep(0.1)
    self.from_spin.setSingleStep(0.1)
    self.to_spin.setRange(0.0,40.0)
    self.from_spin.setRange(0.0,40.0)
    if set_defaults:
        self.from_spin.setValue(2.0)
        self.to_spin.setValue(18.0)

问题是,即使在上面的场景中,输入的值也总是更正为最接近的整数。 我在一个不同的地方使用QDoubleSpinBoxes,但没有改变间隔等,并且它在那里工作应该是。

有什么建议吗?验证器应该没问题,因为它是DoubleBox,对吧? 任何帮助表示赞赏 - 提前谢谢,

1 个答案:

答案 0 :(得分:0)

与此同时,我相信,我发现了问题所在:如果用于定义range,stepsize等的值之一是整数,则输入的值也会跳转到整数。无论如何,现在它有效。