Ich habe ein Wörterbuch, wo es bestimmte Elemente und zugehörige Schlüssel gibt. Ich möchte eine GUI erstellen, um die Elemente anzuzeigen. Ich habe ein QMessageBox PyQt-Widget innerhalb einer for-Schleife verwendet. Aber wenn ich den Code ausführen, erhalte ich einen folgenden Fehler:So beheben Sie den Python-Fehler: "Symbolobjekt ist nicht aufrufbar"?
Traceback (letzte Aufruf zuletzt): Datei "C: \ Python34_64bit \ dict.py", Zeile 50, in main() Datei "C: \ Python34_64bit \ dict.py ", Zeile 45, in Haupt-GUI = MYGUI() Datei" C: \ Python34_64bit \ dict.py ", Zeile 31, in init self.Choice = QtGui.QMessageBox.Question (self, k, val, QtGui.QMes sageBox.Ja | QtGui.QMessageBox.No) TypeError: 'Icon' Objekt ist nicht aufrufbar
Bitte helfen Sie mir, wie dieses Problem mit einer Änderung an meinem Code zu beheben. Unten ist mein Code:
import sys
from PyQt4 import QtGui,QtCore
class MYGUI(QtGui.QWidget):
def __init__(self):
super(MYGUI,self).__init__()
self.setWindowTitle("GUI")
#widgets:
self.labl=QtGui.QLabel(self)
self.labl.setFont(QtGui.QFont('Calibri', 34))
#Layout:
Layout =QtGui.QVBoxLayout()
Layout.addWidget(self.labl)
Layout.addStretch()
self.setLayout(Layout)
#Actions:
Queries={'Q1':'question 1','Q2':'question2'}
for k,val in Queries.items():
self.Choice=QtGui.QMessageBox.Question(self,k,val,QtGui.QMessageBox.Yes | QtGui.QMessageBox.No)
if choice==QtGui.QMessageBox.Yes:
self.labl.setText('yes')
else:
self.labl.setText('No')
self.show()
def main():
app=QtGui.QApplication(sys.argv)
GUI=MYGUI()
sys.exit(app.exec_())
main()
Sie sollten den vollständigen Fehlertrace in Ihrer Frage umfassen, insbesondere den Teil, in dem betont Linie der Fehler passiert. –
Traceback (letzter Anruf zuletzt): Datei "C: \ Python34_64bit \ dictt.py", Zeile 50, in main() Datei "C: \ Python34_64bit \ dictt.py", Zeile 45, in dem Haupt GUI = MYGUI() Datei "C: \ Python34_64bit \ dict.py", Zeile 31, in __init__ self.Choice = QtGui.QMessageBox.Question (selbst, k, val, QtGui.QMessageBox.Ja | QtGui.QMessageBox. No) TypeError: 'Icon' Objekt ist nicht aufrufbar –
@pavansunder in Ihrer Frage; nicht als Kommentar. –