Hallo,
ich habe in meinem Programm Forms, die aus einem Array geladen und angezeigt werden.
Der Type des Arrays:
Delphi-Quellcode:
TAuswertungsfenster = Array[1..255] of record //max 255 Fenster können geöffnet werden
aktiv : boolean;
Fenster : TForm;
Personendaten : TTestperson;
pnPersonendaten, Optionen: TPanel;
Name, Geburtstag, Bestzeit,
DschnittZeit : TLabel;
maennlich, weiblich : TRadiobutton;
Tabelle : TStringgrid;
Diagramm : TImage;
gbGrafik,
gbTabelle : TGroupBox;
end;
Wird ein Fenster erstellt, wird aktiv auf true gesetzt. Versuche ich jetzt mit folgender Funktion ein Fenster im Array zu finden, das gerade angezeigt (Fenster.showing) wird, stürzt das Programm mit einem Stack-Overflow Fehler ab.
Delphi-Quellcode:
function TReaktionstest.aktives_Fenster (Formfeld: TAuswertungsfenster; Anzahl_Fenster: byte): byte;
var lauf: byte;
begin
Result := 0;
for lauf := 1 to Anzahl_Fenster do
begin
if Formfeld[lauf].aktiv //Hier stürzt das Programm ab
then begin
if Formfeld[lauf].Fenster.showing
then Result := lauf;
end;
end;
end;
Weiß jemand warum?
MfG
Christian