![]() |
Childfenster ohne MDI
Hi,
ich schreibe an einem Prog, das ein Hauptformular und mehrere Childformulare hat. Sowas wie MDI, allerdings als SDI. Die Childformulare befinden sich auf einer Panel-Komponente des Hauptformulars. Wenn im Hauptformular auf einen Toolbutton gedrückt wird, wird das entsprechende Child erzeugt und dargestellt. Wie kann ich nun testen, ob ein Child bereits existiert ? Wie kann das Hauptformular feststellen, das ein Child geschlossen wurde ? Mit der API-Funktion GetWindow und FindWindowEx habe ich dieses zwar hinbekommen, doch dauert das zu Lange, da alle Handles der Kompnenten durchlaufen werden, bis das Fensterhandle des gesuchten Childformulars gefunden wurde. Gruß Jacki |
Re: Childfenster ohne MDI
Nimm doch eine Varianle vom Typ boolean, wenn du ein Child erzeugst setzt du diese true, wenn du es wieder schliest auf false ...
|
Re: Childfenster ohne MDI
Edit: :oops: hab grade bemerkt das ich end am Thema vorbeigeredet hab, so auf die schnelle würd ich auch MrKnogges Vorschlag befürworten ;)
|
Re: Childfenster ohne MDI
Ich glaub das Child erzeugen hatt er schon hinbekommen :wink:
|
Re: Childfenster ohne MDI
Hi,
danke, die Sache mit dem Flag scheit einfach und vor allem schnell zu sein. Gibt es sonst noch möglichkeiten ? Gruß Jacki |
Re: Childfenster ohne MDI
Definierst dir Handles und beim Erstellen des Fensters weißt du einem deiner Handles das Handle des Fensters zu jetzt brauchst du nur noch gucken ob das Handle nil ist wenn nicht gibts das Fenster schon, so hast du gleich nen Handle noch dabei und weißt ob das Fenster existiert oder nicht.
Und nicht vergessen beim Destroyen des Fensters das Handle wieder zu löschen ;) |
Re: Childfenster ohne MDI
Was hast du gegen MDI?
Ich finde es ziemlich praktisch & user-freundlich. TileMode (horizontal, vertical) & Cascade sind einfach genial -> damit kann sich der User seine "Arbeitsfläche" schön aufräumen. |
Re: Childfenster ohne MDI
Moin zusammen,
Zitat:
Beim Suchen in diversen Foren bin ich jedoch über mehrere Einträge gestolpert, die da besagen das MDI nicht weiter gefördert wird. Da es wohl auch ein Paar Probleme gibt, wollte ich von Anfang an einen andern, sicheren Weg gehen. :-D Gruß Jacki |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:04 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