Entwickler-Ecke

Delphi Language (Object-Pascal) / CLX - In Form1 Label, Felder und Buttons in Form2 anspechen


Arne Danikowski - Mi 24.01.07 15:10
Titel: In Form1 Label, Felder und Buttons in Form2 anspechen
Hallo,

Ich Habe ein Programm, dass mehrere Formulare hat. Wie kann ich in Form1 zum Beispiel bei einem Klick auf einen Button einen Label in Form 2 umbenennen?

Wie kann ich Daten, die in Form 2 in einem Edit Feld eingeben wurden in eine Variable schreiben, um diese dann in Form 1 zu verwenden?

mfg Arne


ZeitGeist87 - Mi 24.01.07 15:15

Hallo!


Delphi-Quelltext
1:
 derNameDeinerForm.DerNameDesLabel.caption:= 'Neue Überschrift';                    


Sobald du kompilierst, fragt Delphi dich, ob du die Form in du Uses-Klausel eintragen willst. Stimmt mit zu und schon funktionierts.

Und zum anderem Thema: neuer Thread.

Aber:

Such mal nach Suche in der Entwickler-Ecke GLOBALE VARIABLE.

LG
Stefan


elundril - Mi 24.01.07 15:21

du schreibst bei uses den namen der Units die du in dieser verwenden möchtest. zb:

Delphi-Quelltext
1:
2:
uses
  Unit2 {Form2}, Unit3 {Form3}, usw...


dann gibst du in deinem quelltext den namen des Formulars ein auf das du zugreifen möchtest mitsamt dem objekt. in deinem fall das label also:

Delphi-Quelltext
1:
2:
3:
4:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Form2.label1.caption:='DAS WAS HALT DRINSTEHEN SOLLTE';
end;


und mit der Variablen geht es so:

du deklarierst eine Variable im public teil des Form1.


Delphi-Quelltext
1:
2:
3:
  public
    {public-declarations}
    Form2EditVariable: string;   //string weil du ja den inhalt des textes willst


und im form2 gibst du dann das so ähnlich ein wie oben:

Delphi-Quelltext
1:
2:
3:
4:
procedure TForm2.BtnOkClick(Sender: TObject);
begin
  form1.Form2EditVariable:=edit1.text;
end;


natürlich musst du auch im Form2 die Unit der Form1 ins Uses einbinden

lg el


Arne Danikowski - Mi 24.01.07 15:42

Vielen Dank alle Fragen wie immer schnell und Präzise hier beantwortet.
Wenn ich das Prog fertig habe stelle ich das gerne zur Verfügung.