[英]Type values in lineedit and then add it to a comboBox by clicking a button? PyQt4
[英]PyQt: ReturnPressed method on a lineEdit is connecting to the wrong button
我有一個lineEdit和三個按鈕; 接下來,返回並完成。 如果用戶在焦點位於lineEdit上時按Enter,則希望它與按next相同。 這是我在init方法中的代碼:
self.clfdlg.lineEdit.returnPressed.connect(lambda: self.clfdlg.next.click())
self.clfdlg.next.clicked.connect(lambda: self.next())
self.clfdlg.back.clicked.connect(lambda: self.back())
self.clfdlg.finish.clicked.connect(lambda: self.finish())
而不是調用next()方法,而是調用finish()方法。 我也嘗試過:
self.clfdlg.lineEdit.returnPressed.connect(lambda: self.next())
這具有調用finish()方法的相同結果。 以前有沒有發生過這種情況,我真的很感謝一些關於我要去哪里的建議。
謝謝
如果clfdlg
是QDialog
,則可能與按鈕的default屬性clfdlg
。 嘗試在所有相關按鈕上明確清除此屬性:
self.clfdlg.next.setAutoDefault(False)
self.clfdlg.next.setDefault(False)
self.clfdlg.back.setAutoDefault(False)
# etc ...
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.