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 Funktion einer Form über Screen.Forms aufrufen (https://www.delphipraxis.net/88868-funktion-einer-form-ueber-screen-forms-aufrufen.html)

bwolf 22. Mär 2007 10:22


Funktion einer Form über Screen.Forms aufrufen
 
Hi all,

ich steh etwas auf dem Schlauch...
Ich gehe in einer Form über Screen.Forms alle offenen Forms durch, und auf jeder sichtbaren Form möchte ich dann eine eigene Function aufrufen.

Delphi-Quellcode:
    for iInt := 0 to Screen.FormCount-1  do
      if (Screen.Forms[iInt].visible = true) then Screen.Forms[iInt].meineFunction(self);
So klappt das nicht, das er ja meineFunction nicht kennt...aber wie kann man das elegeant lösen?

Ich hab es bisher so gelöst:
Delphi-Quellcode:
    for iInt := 0 to Screen.FormCount-1  do
    begin
      if (Screen.Forms[iInt].visible = true) then
        if Screen.Forms[iInt].Name = 'frm_test' then close := frm_anrede.meineFunction(self);
    end;
Aber das muß doch besser gehn oder? ;)
Danke für eure Hilfe,
grüße ben

Bernhard Geyer 22. Mär 2007 10:28

Re: Funktion einer Form über Screen.Forms aufrufen
 
Über Check mittels As ob das Formular den Richtigen Typ hat und dann mittels as Casten
Delphi-Quellcode:
for iInt := 0 to Screen.FormCount-1  do
begin
  if (Screen.Forms[iInt].visible = true) then
  begin
    if Screen.Forms[iInt] is TmyFormClassName then
      close := (Screen.Forms[iInt] as TmyFormClassName).meineFunction(self);
  end;
end;

dataspider 22. Mär 2007 10:29

Re: Funktion einer Form über Screen.Forms aufrufen
 
Hi,

ja, jetzt ist man an der Stelle, wo man darüber nachdenken sollte, eine Basis Formularklasse einzuführen und alle Formulare der Application von diesem abzuleiten.

Ist das bei dir noch machbar?

Cu, Frank

bwolf 22. Mär 2007 10:33

Re: Funktion einer Form über Screen.Forms aufrufen
 
Hi, danke für die schnellen antworten!

Also sollte ich mir eine eigene Form erstellen, die eben diese Function die ich aufrufen will enthält ?
Wäre super wenn Ihr mir das kurz erläutern würdet, bin da noch nich so wirklich erfahren.

dataspider 22. Mär 2007 12:53

Re: Funktion einer Form über Screen.Forms aufrufen
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von bwolf
Hi, danke für die schnellen antworten!

Also sollte ich mir eine eigene Form erstellen, die eben diese Function die ich aufrufen will enthält ?
Wäre super wenn Ihr mir das kurz erläutern würdet, bin da noch nich so wirklich erfahren.

Ich habe ein Mini Beispiel mal angehängt.

Cu, Frank

bwolf 22. Mär 2007 13:47

Re: Funktion einer Form über Screen.Forms aufrufen
 
Hi Spider,
vielen Dank für die Mühe die du dir da machst :thumb: - werd gleich mal probieren das so umzusetzen und ich denk das krieg hin ;)


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