Hallo, ich lade ein Formular(Form1) in ein Panel(ContainerPanel) das auf meinem Hauptformular(MainForm) liegt:
Delphi-Quellcode:
var MainForm: TMainForm;
...
procedure TMainForm.FormCreate(Sender: TObject);
var
NewFormClass: TFormClass;
NewForm: TForm;
begin
NewFormClass := TForm1;
if ContainerPanel.ControlCount > 0 then
ContainerPanel.Controls[0].Free;
if Assigned(NewFormClass) then
begin
NewForm := NewFormClass.Create(Self);
NewForm.Hide;
NewForm.BorderStyle := bsNone;
NewForm.Parent := ContainerPanel;
NewForm.Align := alClient;
NewForm.Show;
end;
end;
Im Formular(Form1) habe ich einen Button der nun ein weiteres Formular(Form2) öffnet.
Form2 erstelle ich ganz normal in der
IDE, ist also unabhängig von Form1 und MainForm.
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
Form2.Show;
end;
angezeigt wird.
Wie kann ich nun z.B. von Form2 die Komponenten(Eigenschaften) und Ereignisse von Form1 ansprechen?
Wenn ich z.B. ein Label(Label1) auf Form1 habe.
Delphi-Quellcode:
procedure TForm2.Button1Click(Sender: TObject);
begin
Form1.Label1.Caption:= 'Test !';
end;
Leider reagiert Form1 nicht auf meinen Button.
Hab schon verschiedenes mit Parent Anweisungen wie
Form2.Parent:= Form1;
usw. versucht leider ohne Erfolg.