![]() |
Fehler im Programm?
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo
Ich habe ein kleines Problem in meinem Programm. Das Programm ist im Anhang. Wer kann mir da weiterhelfen? Es geht im grunde um die Übergabe bzw. den Zugriff auf Variabeln, Panel oder Edit Inhalten von einer Unit auf die andere. Das Programm ist nur zum Üben gedacht, und hat keinen tieferen Sinn. Kann sich jemand das Programm mal anschauen und mir sagen woran es liegt? Der Fehler liegt wohl in der Unit11 in der Zeile erg := Form2.PZahl[4].Caption! Aber warum? Vielen Dank schon mal. Mit freundlichen Grüßen Flofu |
Re: Fehler im Programm?
Ist die Indizierung bei Arrays nicht 0-based? Müsste es denmach nicht
Delphi-Quellcode:
Heissen? Ich habe bisher nur kurz in Deinen Code geschaut, aber gesehen, dass Du das Array mit [1..4] anlegst...damit hast Du 4 Elemente im Array....wenn Du dann darauf zugreifst, dann fängt das ganze bei null an, also so:
erg := Form2.PZahl[3].Caption;
Delphi-Quellcode:
Ich weiss nun nicht, ob das zur Lösung beträgt, ist aber meines Erachtens erstmal ein Fehler.
erg := Form2.PZahl[0].Caption;
erg := Form2.PZahl[1].Caption; erg := Form2.PZahl[2].Caption; erg := Form2.PZahl[3].Caption; Gruß Christian |
Re: Fehler im Programm?
Hi,
dein problem liegt dort (Hauptprogramm)
Delphi-Quellcode:
du erzeugst eine Instanz von TForm2 und zwar in der Variable BnForm.
procedure TForm1.neuesFormular1Click(Sender: TObject);
var BnForm : TForm2; begin BnForm := TForm2.Create(Self); BnForm.Show; end; Dein Aufruf in Menu11 lautet aber wie folgt.
Delphi-Quellcode:
Hier willst du auf den Inhalt der Variable Form2 zugreifen.
procedure TForm3.Button1Click(Sender: TObject);
var erg : string; begin erg := Form2.PZahl[4].Caption; Da die Instanz aber nicht erzeugt wurde, kracht es. Also, in Hauptprogramm lieber
Delphi-Quellcode:
Edit:
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; Zitat:
Gruß ken |
Re: Fehler im Programm?
Zitat:
|
Re: Fehler im Programm?
Zitat:
Mit freundlichen Grüßen Flo |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:59 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz