PyQt5 à défaut d'importation de QtGui

je viens de passer de PyQt4 à 5 et J'ai un problème avec QtGui. J'ai installé en utilisant l'installateur windows 32bit, pas ma propre construction.

quand je fais:

from PyQt5 import QtGui

je reçois

class MainWindow(QtGui.QMainWindow, UI.MainUI.Ui_MainWindow):
AttributeError: 'module' object has no attribute 'QMainWindow'

donc j'ai essayé

from PyQt5.QtWidgets import QtGui

qui se traduit par:

ImportError: cannot import name QtGui

puis j'ai essayé de changer le système.chemin selon Pyinstaller: importateur: ne peut pas importer nom QtGui travailler autour, mais il me donne toujours le même

ImportError: cannot import name QtGui

mise à Jour: On dirait que je n'en fait importer QtGui parce que quand je vais au RALENTI et essayez, c'est toujours auto-complété QMovie et tout un tas d'autres attributs. Y a-t-il une raison pour que QMainWindow ne soit pas là? (Elle n'est, ni de QDialog et ils semblent importantes)

20
demandé sur Community 2013-12-23 23:19:36

1 réponses

en supposant que tout a été installé correctement, vous devez ajuster légèrement vos importations au port de PyQt4 à PyQt5.

les principaux éléments GUI se trouvent dans le module QtWidgets, tandis que les éléments GUI les plus basiques se trouvent dans QtGui. Voir la page des modules Qt pour plus de détails.

le code de l'exemple doit être changé pour quelque chose comme:

from PyQt5 import QtCore, QtGui, QtWidgets

class MainWindow(QtWidgets.QMainWindow, UI.MainUI.Ui_MainWindow):
    ...

pour plus de détails sur le transfert de PyQt4 à PyQt5, voir: différences entre PyQt4 et PyQt5 .

34
répondu ekhumoro 2013-12-24 03:34:04