相关疑难解决方法(0)

PyQt4用户输入验证 - QlineEdit

我在使用PyQt4理解输入验证方面遇到了一些麻烦.这是我的第一个GUI应用程序,第一次使用PyQt4框架.我一直在阅读Class引用,看起来像文本验证的首选方法是通过QRegularExpression类,但对于一些简单的输入验证来说这似乎过分了.

我的注册用户类中有一个方法,可以将用户添加到sqlite数据库中.我还为QlineEdits创建了一个信号,该信号连接到验证文本的方法.SQL输入工作正常但由于某种原因输入验证没有.这不会引起错误.MessageBoxes不会弹出.据我所知,我只创建了一个SIGNAL,但这仅用于测试.

def newUser(self):                 #This method adds a new user into the login database and displays a pop up window confirming the entry
    c.execute("INSERT INTO logins(usernames, passwords)VALUES(?,?)", (self.userEdit.text(), self.passEdit.text())) #sql query inserts entries from line edit and pass edit into database
    c.commit() #Save database changes
    self.connect(self.userEdit, QtCore.SIGNAL("textchanged()"), self.validText)


def validText(self):
    if len(self.userEdit.text()) < 4:
        if len(self.passEdit.text()) < 4:
            self.msg = QtGui.QMessageBox.information(self, 'Message', 'Not enough characters!', QtGui.QMessageBox.Ok)       
        else:
            self.msg = QtGui.QMessageBox.information(self, 'Message', 'User added successfully', QtGui.QMessageBox.Ok)
Run Code Online (Sandbox Code Playgroud)

在语义上我知道这是有道理的,但我无法弄清楚我在语法上的错误.有人可以告诉我,除了使用len之外,是否还有另一个我应该关注的概念?

提前致谢!

python regex validation user-interface pyqt4

6
推荐指数
1
解决办法
6946
查看次数

标签 统计

pyqt4 ×1

python ×1

regex ×1

user-interface ×1

validation ×1