habe ich erstellt Dateien .ui QtDesigner mit und ich sie in zwei separaten Fenster als Show laden unterPyQt5: Typeerror: ‚Falsche Basisklasse von Toplevel-Widget‘
class MainWindow(QMainWindow):
def __init__(self, parent=None):
super().__init__()
# Set up the user interface from Designer.
uic.loadUi("interface/UI/main.ui", self)
# Connect up the buttons
self.button_classes.clicked.connect(self.open_classes)
self.w = []
def open_classes(self):
self.w.append(PopupWindow(self))
self.w[-1].show()
class PopupWindow(QMainWindow):
def __init__(self, parent=None):
super().__init__()
# Set up the user interface from Designer.
uic.loadUi("interface/UI/newclass.ui", self)
Wenn ich den Code in PyCharm zulaufen Debug-Modus, der folgende Fehler auftritt, aber dies nicht der Fall, wenn der Code ausgeführt wird normalerweise
TypeError: ('Wrong base class of toplevel widget', (<class 'controllers.GUI.PopupWindow'>, 'QDialog'))
Erhalten Sie eine Fehlermeldung, wenn Sie es in der Konsole/terminal/cmd.exe/powershell ausführen? fügen Sie vollständige Fehlermeldung in Frage. – furas
@furas Wenn ich den Code normal ausführen, gibt es keine Fehler, aber wenn ich den Code im Debug-Modus in PyCharm ausführen, erhalte ich einen Type Error, den ich der Frage – Ronikos
hinzugefügt habe, haben Sie die Nachricht "Falsche Basisklasse von Toplevel-Widget ', (,' QDialog ')) 'so denke ich, dass Sie' QDialog' erwarten, um ein zweites Fenster zu erstellen, aber Sie benutzen 'QMainWindow' in der Klasse PopupWindowONE (QMainWindow): ' –
furas