Was ist der Unterschied zwischen QMainWindow, QWidget und QDialog?
-
18-09-2020 - |
Frage
Was ist der Unterschied zwischen QMainWindow, QWidget und QDialog?
Lösung
A QWidget
ist die Basisklasse für alle zeichenbaren Klassen in Qt.Beliebig QWidget
-basierte Klasse kann als Fenster angezeigt werden, indem sie angezeigt wird, wenn sie kein übergeordnetes Element hat.
A QDialog
basiert auf QWidget
, aber so gestaltet, dass es als Fenster angezeigt werden kann.Es wird immer in einem Fenster angezeigt und verfügt über Funktionen, die eine gute Zusammenarbeit mit gängigen Schaltflächen in Dialogen ermöglichen (Akzeptieren, Ablehnen usw.).
QMainWindow
ist auf die allgemeinen Anforderungen an ein Hauptfenster ausgelegt.Es verfügt über vordefinierte Orte für eine Menüleiste, eine Statusleiste, eine Symbolleiste und andere Widgets.Es gibt keine eingebauten Zulagen für Schaltflächen wie QDialog
tut.
Andere Tipps
qwidget : ist eine Basisklasse für alle anderen GUI-Elemente im qtwidgets-Modul.Es kann ein Fenster von selbst darstellen oder Teil eines QLAYOUT sein oder nur ein Mitglied der Eltern-Kindhierarchie.
qdialog : wird normalerweise verwendet, um zu überraschen!- Anzeigen eines temporären Dialogs, wenn der Benutzereintrag erforderlich ist.
qmainwindow : ist eine Convenience-Klasse, die als Hauptfenster Ihrer Anwendung verwendet werden kann.Es hat einige schöne Funktionen integriert: eine Statusleiste, Symbolleiste und eine Menüleiste