[Metalab] QT
Georg Lippitsch
georg.lippitsch at gmx.at
Tue Feb 22 20:47:28 CET 2011
Am 22.02.2011 19:56, schrieb Berni _:
> Mich plagt: die Unterschiede zw. Dialogen und Fenster (und Widgets) zu
In QT sind alle GUI-Element von QWidget abgeleitet, d.h. jedes Fenster
und jeder Dialog, aber auch Kn�pfe, Lables, und alles andere sind
prinzipiell mal auch QWidgets.
Ein QDialog bietet im Gegensatz zu anderen Fensterarten die M�glichkeit,
dass die Funktion, welche man zum Anzeigen aufruft, so lange blockt, bis
man den Dialog wegklickt. Ist sinnvoll wenn man z.B. irgend eine
Ja/Nein-Abfrage machen will, weil man einfach nur auf das Return von
QDialog.exec() warten muss, und nicht einen EventHandler schreiben.
Das Hauptfenster einer Applikation sollte normalerweise ein QMainWindow
sein. F�r alle anderen Fenster, die nicht QMainWindow sind und auch
nicht w�hrend der Anzeige blocken sollen, kann man direkt QWidget verwenden.
> Zu wissen ob es gscheit ist ein Projekt mit UI anzufangen, oder besser
> alles ausschreiben. Was hat es mit dem moc auf sich?
Was Du hier mit "UI" meinst versteh ich jetzt nicht ganz. Komplizierte
Fenster sollte man nat�rlich mit dem Designer machen, und dann aus den
.ui Files die notwendigen Header erzeugen.
Zum �ben w�r's aber schon sinnvoll wenn Du mal ein paar einfache Fenster
direkt schreibst, damit Du sp�ter das Einbinden vom automatisch
generierten Header aus dem .ui-File besser verstehst.
Der moc (Meta-Object Compiler) erzeugt zus�tzliche cpp-Files, die f�r
das Funktionieren von "Signals und Slots" notwendig sind. Signals und
Slots sind eine sehr praktische M�glichkeit wie man Funktionen aufrufen
und miteinander verbinden kann, die allerdings von der Sprache C++ nicht
direkt unterst�tzt wird. Der moc muss daher die Source-Files parsen und
zus�tzlichen Code erzeugen, damit das funktioniert.
> Ist QT ein weiser Schritt? Das geh�rt ja zu Nokia.
Das ist nat�rlich immer eine Philosophie-Frage. Ich pers�nlich finde QT
so ziemlich das beste universelle Frameworks �berhaupt, man kann richtig
viel damit machen, es ist clever designed und l�uft auf verschiedenen
Plattformen. Lizenz ist LGPL, d.h. es handelt sich um echte freie
Software. Da "st�rt" auch Nokia nicht, f�r den Fall das die mal bl�d
werden wird es sicher von der Community weiter gepflegt.
> Wenn du mal im Lab w�rst Georg, dann k�nnte ich dir zeigen was ich bis
> jetzt gemacht habe.
> Zeitvorgaben f�r mein Projekt habe ich, muss aber nicht die Woche sein.
Bin voraussichtlich am Freitag da, nach Clifford's Kurs k�mma mal
schauen. Sonst m�ss ma was ausmachen, vorzugsweise Wochenende ....
Hoffe, das hilft bissl,
Gr��e!
Georg
More information about the Metalab
mailing list