Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   Delphi Alle Forms eines Projectes ermitteln (https://www.delphipraxis.net/58881-alle-forms-eines-projectes-ermitteln.html)

kingflo 14. Dez 2005 09:20


Alle Forms eines Projectes ermitteln
 
Hallo...
Kennt von euch zufällig jemand eine gute und leichte möglichkeit alle Formulare meines Projektes zu ermitteln?

also ich brauch nur den namen der Form z.B Form1

denn ich muss eine funktion für jede Form in meiner Anwendung benutzen und deshalb hätte ich gerne eine schleife, damit ich die procedure nur einmal benutzen muss.

wäre toll wenn da jemand was kennt.

AndreasP 14. Dez 2005 09:48

Re: Alle Forms eines Projectes ermitteln
 
mahlzeit,

für formulare ist das eigentlich recht einfach:
Delphi-Quellcode:
var i: integer;
  Comp: TComponent;
begin
  Memo1.Clear;
  for i := 0 to Application.ComponentCount - 1 do
  begin
    Comp := Application.Components[i];
    if Comp is TForm then
      Memo1.Lines.Add(TForm(Comp).Name);
  end;
end;
formulare die beim start dieser funktion noch nicht initialisiert wurden (project->optionen->formulare) werden in diesem fall nicht mit aufgelistet. dialoge (TOpenDialog...) funktionieren imho generell nicht da ja der dialog erst mit execute() erstellt wird und danach wieder freigegeben wird (ich lass mich aber gern eines besseren belehren). eventuell solltest du die funktion erst aufrufen wenn das fenster/dialog angezeigt/gebraucht wird. was genau willst du denn machen?

Lannes 14. Dez 2005 10:01

Re: Alle Forms eines Projectes ermitteln
 
Hallo,

ich kann noch dieses mit der gleichen Funktionalität anbieten:
Delphi-Quellcode:
for z := 0 to Screen.FormCount-1 do
    Memo1.Lines.Add(Screen.Forms[z].Name);

kingflo 14. Dez 2005 11:04

Re: Alle Forms eines Projectes ermitteln
 
Ja genau das habe ich gesucht danke...

Sollte man in die Libary aufnehmen kann man nämlich immer mal gebrauchen


danke


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:14 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