首页 > 解决方案 > QLineEdit 设置标题大小写

问题描述

是否可以在输入输入时使用 QValidator 设置 QLineEdit 的文本?如果是这样,有人可以推动如何实现它的正确方向吗?谢谢你。

标签: pythonpython-3.xpyqtpyqt5qlineedit

解决方案


您只需要覆盖 validate 方法:

from PyQt5 import QtCore, QtGui, QtWidgets

class TitleValidator(QtGui.QValidator):
    def validate(self, _input, pos):
        return QtGui.QValidator.Acceptable , _input.title(), pos

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

推荐阅读