在QSpinBox Widget - PyQt4中用字符串替换整数(带逗号的整数)

时间:2017-07-13 13:29:41

标签: python pyqt pyqt4 qspinbox

我使用PyQt4设计器将QSpinBox Widget添加到我的项目中。 QSpinBox小部件包含一个整数(计数器)。 我正在使用此setValue()方法更新此数字。

我想用逗号代替相同数字的整数。所以现在它将是一个字符串,而不是整数。

是否可以在QSpinBox Widget中添加一个字符串(带逗号的整数)?如果不是,我应该使用哪个小部件?我应该使用哪些方法? 感谢。

1 个答案:

答案 0 :(得分:0)

只是子类QSpinbox并覆盖textFromValue方法。您需要使用setRange更改范围才能看到格式,因为默认的最大值为99.

class CommaSpinBox(QtWidgets.QSpinBox):
    def __init__(self, *args, **kwargs):
        super(CommaSpinBox, self).__init__(*args, **kwargs)

    def textFromValue(self, value):
        return '{:,d}'.format(value)