Hi,
dein problem liegt dort (Hauptprogramm)
Delphi-Quellcode:
procedure TForm1.neuesFormular1Click(Sender: TObject);
var BnForm : TForm2;
begin
BnForm := TForm2.Create(Self);
BnForm.Show;
end;
du erzeugst eine Instanz von TForm2 und zwar in der Variable BnForm.
Dein Aufruf in Menu11 lautet aber wie folgt.
Delphi-Quellcode:
procedure TForm3.Button1Click(Sender: TObject);
var erg : string;
begin
erg := Form2.PZahl[4].Caption;
Hier willst du auf den Inhalt der Variable Form2 zugreifen.
Da die Instanz aber nicht erzeugt wurde, kracht es.
Also, in Hauptprogramm lieber
Delphi-Quellcode:
procedure TForm1.neuesFormular1Click(Sender: TObject);
begin
if not assigned(Form2) then // <- damit überprüfst du, ob die instanz bereits erzeugt wurde.
Form2 := TForm2.Create(Self); // wenn nicht, erzeugst du hier eine
Form2.Show;
end;
Edit:
Zitat von
Bowler:
Ist die Indizierung bei Arrays nicht 0-based? Müsste es denmach nicht ..
Nein in diesem Fall nicht. Flofu hat das Array als ab 1 beginnend deklariert.
Gruß
ken