Hallo,
ich bringe es nicht fertig, ein Haupt- und ein Kindfenster zu erzeugen. Ich kann zwar das Kindfenster erzeugen, aber es sollte sich im Hauptfenster maximiert öffnen, und dabei mache ich irgendetwas falsch. Das Hauptformular definiere ich im Objektinspektor als fsMDIForm, und wenn ich dann versuche, beim Kindfenster fsMDIKind einzutragen, wird auch beim Hauptfenster fsMDIKind übernommen. Wenn ich beim MDIKind-Fenster wsmaximize eintrage, wird es bildschirmfüllend geöffnet und nicht innerhalb des Hauptformulars.
Ich wäre sehr dankbar, wenn mir jemand sagen könnte, was ich falsch mache.
fsMDIForm und fsMDIChild
-
- Beiträge: 2120
- Registriert: Di 23. Sep 2014, 17:46
- OS, Lazarus, FPC: Win10 | Linux
- CPU-Target: x86_64
Re: fsMDIForm und fsMDIChild
MDI ist seit Windows 2000 outdated, und wird von dem LCL Win32 widgetset nicht unterstützt.
Re: fsMDIForm und fsMDIChild
Vielen Dank für den Hinweis.
Gibt es denn eine andere Möglichkeit, ein zweites Fenster innerhalb des ersten zu öffnen? Zum Beispiel für ein Impressum oder eine Bedienungsanleitung. Bzw das zweite Fenster ist ja eigentlich kein Problem, aber es sollte halt nicht so unkonntrolliert auf dem Desktop erscheinen, sondern füllend innerhalb des Hauptfensters.
Gibt es denn eine andere Möglichkeit, ein zweites Fenster innerhalb des ersten zu öffnen? Zum Beispiel für ein Impressum oder eine Bedienungsanleitung. Bzw das zweite Fenster ist ja eigentlich kein Problem, aber es sollte halt nicht so unkonntrolliert auf dem Desktop erscheinen, sondern füllend innerhalb des Hauptfensters.
-
- Beiträge: 6918
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: fsMDIForm und fsMDIChild
Wieso ist man eigentlich von MDI weggekommen ?MDI ist seit Windows 2000 outdated
Ich fand das noch eine praktische Sache, wen man zB. 2 Fenster innerhalb einer Anwendung öffnen konnte.
Heute muss man dafür die Anwendung 2x starten und somit sind die ganzen Menus und Toolbars doppelt auf dem Bildschirm.
Ich denke so einfach wie mit MDI geht dies nicht mehr. Heute nimmt man Registerkarten für die einzelnen Fenster, so wie es Lazarus im Editor hat oder wie Chrome.Gibt es denn eine andere Möglichkeit, ein zweites Fenster innerhalb des ersten zu öffnen?
Und wie schon gesagt, wen man Fenster nebeneinander will, muss man die Anwendung ein zweiter mal starten.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: fsMDIForm und fsMDIChild
Stand der Dinge ist wohl:Warf hat geschrieben:MDI ist seit Windows 2000 outdated, und wird von dem LCL Win32 widgetset nicht unterstützt.
"MDI is completely implemented only for qt widgetset on x11, mac and win32 platforms.
Win32 needs patches to get it properly work."
=> "Feel free to create patch for win32 widgetset."
=> http://forum.lazarus.freepascal.org/ind ... ic=26112.0
Das hier http://wiki.freepascal.org/MultiDoc
und das hier http://wiki.freepascal.org/LMDI
gab's mal, ist aber nicht mehr im Sourcecode verfügbar.
Das hier http://wiki.freepascal.org/TTDINotebook
habe ich noch nicht ausprobiert, wäre vielleicht ein Workaround ..
