当我在下面的代码行中输入代码时,我相信它会崩溃。我需要给这里输入的内容分配一个变量。在
import sys
from PyQt5.QtWidgets import *
from PyQt5 import QtWidgets
class loginScreen(QtWidgets.QWidget):
def __init__(self):
super().__init__()
self.initUI()
def initUI(self):
usernameBox = QtWidgets.QLineEdit()
usernameBox.textChanged.connect(self.myfunc)
vArrangement = QtWidgets.QVBoxLayout()
vArrangement.addWidget(usernameBox)
self.setLayout(vArrangement)
self.show()
def myfunc(self):
x = usernameBox.text()
print(x)
if __name__ == '__main__':
app = QApplication(sys.argv)
ex = loginScreen()
sys.exit(app.exec_())
如果您观察到
usernameBox
它是作为局部变量创建的,因此类的其他方法无法访问它,在您的例子中有两种解决方案:sender()
来获得发出信号的对象,在您的例子中是QLineEdit
。在^{pr2}$
相关问题 更多 >
编程相关推荐