Entwickler-Ecke

Grafische Benutzeroberflächen (VCL & FireMonkey) - Muß ich Dialoge immer StayOnTop machen? Und was ist mit MDI?


JRegier - Do 10.11.05 08:11
Titel: Muß ich Dialoge immer StayOnTop machen? Und was ist mit MDI?
Hi, muß ich Dialoge StayOnTop machen?
Weil ich war der ansicht ich müßte es und da hatte ich das Problem das Delphi Fehlermeldungen nicht angezeigt
wurden und alles blieb hängen weil ich die Fehlermeldung nicht quitieren konnte!

Und was ist MDI?
Muß ich das von vorn herein bestimmen dass ich eine MDI Anwednung erstellen will
oder kann ich sie zu solcher jederzeit ändern?


noidic - Do 10.11.05 09:11

Nein, Dialoge muss man nicht StayOnTop machen. Bei nicht-modalen Fenstern kann es Sinn machen, wenn die auf jeden Fall immer im Vordergrund sein sollen ( wie z.B. Werkzeugfenster in Grafikprogrammen ), aber ansonsten braucht mans eigentlich nicht.

Gute Beispiele für MDI-Anwendungen sind die MS-Office - Programme, Fenster im Fenster halt. Kann man vielleicht zur Laufzeit noch einstellen, eigentlich sollte man das aber bereits im Design tun.


JRegier - Do 10.11.05 09:22

user profile iconnoidic hat folgendes geschrieben:
Gute Beispiele für MDI-Anwendungen sind die MS-Office - Programme, Fenster im Fenster halt. Kann man vielleicht zur Laufzeit noch einstellen, eigentlich sollte man das aber bereits im Design tun.


Ja ich meinte nicht zur Laufzeit, ich meinte auch im Design, aber wenn ich am Anfang nicht direkt MDI Anwendung gewählt habe
kann ich das im Design immer noch ändern? Und was müsste ich tun? Einfach FormStyle ändern?


jasocul - Do 10.11.05 09:28

Du musst eine Form als MDIForm einstellen.
Die übrigen Forms müssen MDIChilds sein. Es sein denn du willst es explizit nicht (z.B. Dialoge, oder Forms mit besonderen Aufgaben). Eine Besonderheit ist zu beachten:
Wenn du ein MDIChild schließt, wird es nicht geschlossen, sonder minimiert. Soll es geschlossen werden, musst du im OnClose den Parameter Action auf caFree setzen.


JRegier - Do 10.11.05 15:39

Vielen Dank, Leute, Frage geklärt!