![]() |
MDIChild aus DLL nutzen
Hallo zusammen,
ich habe schon viel gelesen und gesucht und auf mir schon Klassen von TForm abgeleitet. Gibt es keine Möglichkeit, das ich ein Formular aus einer Library als MDIChild nutze, wenn die Applikation das MDIFormular ist. Oder gibt es irgendeine Alternative, was wie MDI aussieht, aber nicht MDI ist? Oliver |
Re: MDIChild aus DLL nutzen
Zitat:
|
Re: MDIChild aus DLL nutzen
Und wie geht das?
|
Re: MDIChild aus DLL nutzen
Wenn du das hier in google.com eingibst:
+mdi+dll bekommst du das hier als 1. Suchergebnis: ![]() |
Re: MDIChild aus DLL nutzen
Ok, danke :-)
|
Re: MDIChild aus DLL nutzen
der richtige Weg sind Packages, ohne Frage.
Es geht aber auch mit DLLs. Dazu wird in der DLL ein ganz normales TForm eingelinkt. Wenn dieses TForm nun als MDI in die Hauptanwendung eingeblendet werden soll so erzeugt die Hauptanwendung erstmal ein neues und leeres TForm als fsMDIChild. Dieses wird einer Funktion der DLL als Parameter übergeben und darin erzeugt die DLL ihr eigenes TForm. Dessen Properties werden ein gestellt aus .Align := alClient; .IsControl := True; .Parent := MDIForm; .BorderStyle := bsNone; Man bettet also das DLL Form in das MDIForm der Anwendung quasi als Control, wie ein TPanel, ein. Aber Vorsicht! das ist eben nicht ganz sauber und du musst zb. SharedMM benutzen in deiner DLL und Hauptanwendung. Dieser Tipp ist rein akademischer Natur! Du kannst als damit rumexperimentieren aber für Produktivcode kann ich nur Packages empfehlen. Gruß Hagen |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz