Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Delphi Mehrere Formulare (immer dasselbe) schließen (https://www.delphipraxis.net/198957-mehrere-formulare-immer-dasselbe-schliessen.html)

Broucker 14. Dez 2018 10:14

Mehrere Formulare (immer dasselbe) schließen
 
Hallo,
ich habe ein klitzekleines Verständnisproblem.
Ich erzeuge in einer Anwendung mehrere gleiche Formulare

Der User kann mit einem Button mehrmals
Application.CreateForm(TFormEditQuelle, FormEditQuelle);
FormEditQuelle... // INIT
FormEditQuelle.Show;

das Formular FormEditQuelle aufrufen.

Ich möchte, wenn er das aufrufende Formular (das mit dem Button) schliesst auch alle
Formulare die mit dem Button erzeugt wurden schleißen

? weiss aber nicht wie
Kann mir da wer helfen

Vielen Dank!

Der schöne Günther 14. Dez 2018 10:20

AW: Mehrere Formulare (immer dasselbe) schließen
 
Unter Screen.Forms[] stecken alle VCL-Formulare die deine Anwendung erzeugt hat:

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var
   formIndex: Integer;
   form: TForm;
begin
   for formIndex := 0 to Pred(Screen.FormCount) do
      begin
         form := Screen.Forms[formIndex];
         if (form is TFormEditQuelle) then
            form.Close();
      end;
end;

Schokohase 14. Dez 2018 10:25

AW: Mehrere Formulare (immer dasselbe) schließen
 
Zitat:

Alle Formulare vom Typ
Delphi-Quellcode:
TFormEditQuelle

ist nicht zwangsläufig gleich
Zitat:

Alle Formulare die mit dem Button erzeugt wurden
sondern nur wenn
Delphi-Quellcode:
TFormEditQuelle
Instanzen ausschließlich über den Button und auch nur diese Formular-Instanzen erzeugt werden.

hoika 14. Dez 2018 10:29

AW: Mehrere Formulare (immer dasselbe) schließen
 
Hallo,
ansonsten musst du dir halt alle erzeugten Formulare merken (TList oder TObjectList).

Broucker 14. Dez 2018 10:33

AW: Mehrere Formulare (immer dasselbe) schließen
 
Vielen Dank dem schönen Günther!!!!
That's it

@Schokohase - Alle Instanzen werden ausschließlich über den Button und auch nur diese Formular-Instanzen erzeugt

Danke Euch allen - ne schöne Weihnachtszeit!


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:33 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz