Как избежать нулевого или пустого значения в Lineedit Pyqt5 - PullRequest
0 голосов
/ 15 марта 2019

Я создал форму, используя PyQT5, используя python, в форме, которую я получаю от пользователя через QLineEdit.

Моя проблема заключается в том, что пользователь не должен оставлять поля в форме пустыми.

Как избежать пустого Lineedit?

1 Ответ

0 голосов
/ 15 марта 2019

Простое решение - использовать пользовательский QValidator:

from PyQt5 import QtGui, QtWidgets

class NotEmptyValidator(QtGui.QValidator):
    def validate(self, text, pos):
        state = QtGui.QIntValidator.Acceptable if bool(text) else QtGui.QIntValidator.Invalid
        return state, text, pos

if __name__ == '__main__':
    import sys
    app = QtWidgets.QApplication(sys.argv)
    w = QtWidgets.QLineEdit("Hello World")
    validator = NotEmptyValidator(w)
    w.setValidator(validator)
    w.show()
    sys.exit(app.exec_())
...