Qt5: AttributeError: 'module' objet n'a pas d'attribut "QApplication'
Système: 15.10 (Wily loup-Garou) x64
Code:
# -*- coding: utf-8 -*-
# Form implementation generated from reading ui file 'test.ui'
#
# Created by: PyQt5 UI code generator 5.5.1
#
# WARNING! All changes made in this file will be lost!
from PyQt5 import QtCore, QtGui, QtWidgets
class Ui_Form(object):
def setupUi(self, Form):
Form.setObjectName("Form")
Form.resize(400, 300)
self.pushButton = QtWidgets.QPushButton(Form)
self.pushButton.setGeometry(QtCore.QRect(120, 120, 85, 26))
self.pushButton.setObjectName("pushButton")
self.retranslateUi(Form)
QtCore.QMetaObject.connectSlotsByName(Form)
def retranslateUi(self, Form):
_translate = QtCore.QCoreApplication.translate
Form.setWindowTitle(_translate("Form", "Form"))
self.pushButton.setText(_translate("Form", "PushButton"))
if __name__ == '__main__':
app = QtGui.QApplication(sys.argv)
ex = Ui_Form()
ex.show()
sys.exit(app.exec_())
J'obtiens l'erreur suivante:
app = QtGui.QApplication(sys.argv)
AttributeError: 'module' object has no attribute 'QApplication'
En gros, j'ai conçu l'interface graphique avec la Qt5 et ensuite utilisé pyuic5. J'ai déjà installé PyQt5, vous ne savez pas si l'installation s'est faite à travers comme prévu.
Conception de l'INTERFACE utilisateur:
Toute aide sera très appréciée.
Qu'est-ce:
Je viens de mettre à jour le post pour référence ultérieure.
Il y a plusieurs problèmes avec ce code:
Permettez-moi d'essayer de nouveau. J'ai utilisé à partir d'une pratique.
dir(QtGui)
vous donner?Je viens de mettre à jour le post pour référence ultérieure.
Il y a plusieurs problèmes avec ce code:
QApplication
est dans QWidgets
, le import sys
instruction est manquant, Ui_Form
devrait probablement hériter d'une classe Qt QWidget
?, ex.setupUi(ex)
doit être appelée avant que le ex.show()
.Permettez-moi d'essayer de nouveau. J'ai utilisé à partir d'une pratique.
OriginalL'auteur Portu | 2016-01-23
Vous devez vous connecter pour publier un commentaire.
Je ne suis pas sûr de savoir comment votre fonction principale a été généré. J'ai essayé de le reproduire avec ce qui semble être de la même version de pyuic5. Je suis à l'appeler avec la ligne de commande
pyuic5 -x untitled.ui
(où l'interface comme dans votre cas, ne contient qu'un bouton-Poussoir dans un Widget). Le-x
option a pour effet: "L'généré le code Python comprend une petite quantité de code supplémentaire qui crée et affiche l'interface graphique quand il est exécuté comme une application autonome.' (http://pyqt.sourceforge.net/Docs/PyQt5/designer.html) Le résultat que j'obtiens estqui a une autre fonction principale. Le reste du code est équivalent.
Votre code fonctionne très bien. Merci!!!!
OriginalL'auteur Peter