// Manchmal braucht
man beispielsweise den gleichen Button mit der
// gleichen Funktion auf zwei oder mehreren Fenstern.
// Anstatt ihn jedesmal neu zu erzeugen, kann man ihn von
// Form zu Form hüpfen lassen, was auch die EXE verkleinern kann.
// Getestet mit D4 unter Win98
var
Form1: TForm1;
implementation
uses Unit2;
{$R *.DFM}
procedure TForm1.springen;
begin
// ein TPanel, ein TButton u. ein TMemo
//springen von Form1 auf Form2
panel1.parent := form2;
button1.parent := form2;
memo1.parent := form2;
// ein TEdit u. ein TLabel springen
// auf ein Tpanel
// (je nach ihrer vorigen Position auf Form1 sind
// sie vielleicht nicht zu sehen. Dann müssen TOP und
// LEFT geändert werden)
edit1.parent := panel2;
label1.parent := panel2;
// Das TPanel samt den aufgesprungenen
// Komponenten springt auch auf Form2
panel2.parent := form2;
end;
procedure TForm1.Button3Click(Sender: TObject);
begin
springen;
end;
// - - - - - - - - - - - - - - - - - - - - - - - - - -
//wenn Form2 schließt, springt alles wieder zurück
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
with form1 do
begin
panel1.parent := form1;
button1.parent := form1;
memo1.parent := form1;
// evtl. müssen TOP und LEFT wieder geändert werden
edit1.parent := form1;
label1.parent := form1;
panel2.parent := form1;
end;
end;
|