Я использую конструктор PyQt, а затем преобразовываю его с помощью pyuic4.
Мой файл Пользовательский интерфейс этой COMBOBOX который выглядит следующим образом:Как получить текущее значение от PyQt comboBox
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 Я пытаюсь получить текст текущего элемента combobox.
так, это возможно?
благодаря
поэтому ответ на вопросы, является .currentText(), но было бы неплохо, если бы кто-то может объяснить рассуждения об ошибках. – user1938107