我正在使用PyQt設計器,然後使用pyuic4轉換它。
我的UI文件中有此組合框,看起來像這樣:如何從PyQt組合框中獲取當前值
self.comboBox = QtGui.QComboBox(self.groupBox_3)
self.comboBox.setGeometry(QtCore.QRect(20, 30, 81, 22))
self.comboBox.setObjectName(_fromUtf8("comboBox"))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
self.comboBox.addItem(_fromUtf8(""))
所以你可以看到,我把我的組合框中的文本犯規在這部分代碼顯示出來,但它確實表明了在gui中。
通常有一些用戶選擇,當我像一個單選按鈕,我可以做這個檢查:
if self.RAnkle.isChecked():
我可以做類似的事情與輸入文本。我試圖用comboBox來做這個邏輯,就像我想說self.comboBox.getText()並返回用戶選擇的字符串。我試過在這個http://pyqt.sourceforge.net/Docs/PyQt4/qcombobox.html做一些項目,但我不能得到它的工作。
例如,這樣的代碼:
self.comboBox.activated()
返回此錯誤消息:
TypeError: native Qt signal is not callable
我還試圖使用的ItemData(),但我仍然收到錯誤:
TypeError: QComboBox.itemData(int, int role=Qt.UserRole): not enough arguments
我正在做這個回調的內部,所以我首先這樣做:
self.analyzeButton.clicked.connect(self._AnalyzeData)
然後裏面的函數_AnalyzeData我試圖獲取當前組合框項目的文本。
所以,這可能嗎?
謝謝
所以問題的答案是.currentText(),但是這將是很好,如果有人可以解釋錯誤的推理。 – user1938107