【问题标题】:How to restrict user input in QLineEdit in pyqt如何在pyqt的QLineEdit中限制用户输入
【发布时间】:2013-03-27 14:58:16
【问题描述】:

我有一个QLineEdit,我想限制QLineEdit 只接受整数。它应该像输入掩码一样工作。但我不想使用inputmask,因为如果用户点击QLineEdit,光标将位于点击鼠标的位置。用户需要导航到 0 位置并输入他想要的内容。

这个有什么替代品吗?

【问题讨论】:

    标签: python pyqt4 qlineedit


    【解决方案1】:

    您可以使用 QValidator,它的工作原理如下:

    #To allow only int
    self.onlyInt = QIntValidator()
    self.LineEdit.setValidator(self.onlyInt)
    

    【讨论】:

    • 这是正确的做法。使用验证器。
    【解决方案2】:

    您可以使用异常处理来验证这一点:

    number = self.ui.number_lineEdit.text()
    try:
        number = int(number)
    except Exception:
        QtGui.QMessageBox.about(self, 'Error','Input can only be a number')
        pass
    

    您也可以使用validators 来验证输入字符串。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-19
    • 1970-01-01
    • 1970-01-01
    • 2012-04-25
    • 2012-05-03
    相关资源
    最近更新 更多