我的应用中有一个QPlainText
。当点击此QPlainText
或从键盘输入字符时,我调用一个方法从数据库中获取名为get_info()
的信息。这就是我使用此方法的方法:
self.plainTxtPatientDiagnosis.keyPressEvent = functools.partial(self.get_info)
self.plainTxtPatientDiagnosis.mousePressEvent = functools.partial(self.get_info)
并将文字设置为QPlainText
。
def get_info(self, event):
if event.key == QtCore.Qt.Key_Tab:
self.chkboxPatientStatus.setFocus()
......(Getting info from database codes)
我想要做的是当按Tab键时,聚焦另一个QCheckBox
对象。如果我从键盘输入tab关键字从数据库获取信息并设置QPlainText对象但不聚焦QCheckbox
对象。如果我按鼠标会出现错误:
AttributeError: 'QMouseEvent' object has no attribute 'key'
我该怎么办?
答案 0 :(得分:0)
在这种情况下,为什么你需要部分?,你没有传递任何东西而你没有连接信号。
self.plainTxtPatientDiagnosis.keyPressEvent.connect(self.get_info)
self.plainTxtPatientDiagnosis.mousePressEvent.connect(self.get_info)
不要这样做吗?