2014-02-22 3 views
5

Wie würden Sie Informationen von einem Formular an ein anderes Formular übergeben, z. B. den Wert eines Formulars. Wenn eine Schaltfläche gedrückt wird, werden die Informationen in einem Formular 2 gesendet.Informationen von einem Formular zum anderen weitergeben?

How Darf ich das machen?

+1

Durch Hinzufügen von Methoden und Übergabe von Argumenten? :) –

Antwort

5

Wenn Sie einfach den Inhalt eines Bearbeitungssteuerelements in einem Formular an ein Label in einem anderen Formular übergeben, legen Sie einfach Label.Caption (Komponenten in einem Formular sind veröffentlichte Eigenschaften dieses Formulars).

Vorausgesetzt, dass Sie das Gerät enthält TForm2 zum TForm1 Gerät hinzugefügt haben und beide Formen erstellt, und dass sie beide ihre Standardnamen haben:

procedure TForm1.Button1Click(Sender: TObject); 
begin 
    Form2.Label1.Caption := Edit1.Text; 
end; 

Wenn Sie bereits nicht das zweite Formular erstellt, Sie können dies tun und die Beschriftungsbezeichnung gleichzeitig zuweisen. Dieses Beispiel zeigt, wie ein neues Formular erstellen, die Etikettenbeschriftung gesetzt, zeigt die Form und warten, bis der Benutzer es zu schließen, und dann das Formular frei:

procedure TForm1.Button1Click(Sender: TObject); 
var 
    NewForm: TForm2; 
begin 
    NewForm := TForm2.Create(nil); 
    try 
    NewForm.Label1.Caption := Edit1.Text; 
    NewForm.ShowModal; 
    finally 
    NewForm.Free; 
    end; 
end; 

Für komplexere Anforderungen können Sie erstellen Eigenschaften Legen Sie Methoden oder Methoden für das zweite Formular fest, das Sie aufrufen können, und übergeben Sie Informationen als Parameter an die Prozedur.

+2

Ihre Antwort wird sehr geschätzt! –