Delphi Can

Orjinalini görmek için tıklayınız: Delphi Formlar Arası Nesne Taşıma
Şu anda (Arşiv) modunu görüntülemektesiniz. Orjinal Sürümü Görüntüle internal link
Merhaba arkadaşlar, delphi'de iki tane form oluşturdum form1 ve form2.
form1 formunda bir tane panel ve bir tane buton var.

butona bastığımda form2 açılsın ve panel form2'ye taşınsın istiyorum. daha sonra form2'yi kapattığımda panel tekrar form1'e geri gelsin
istiyorum bunu nasıl yapabiliriz.




  Application.CreateForm(TForm2, Form2);
  panel1.Parent:=form2.panel1;
  form2.Showmodal;
  form2.Panel1.Parent:=panel1;
  form2.Free;


bu kodlar form1'deki paneli form2'ye taşıyorum ama form2'yi kapatıp tekrar butona bastığımda hata alıyorum.
Merhaba, aslında cevabı kendiniz de vermişsiniz ama sanırım gözünüzden kaçtı. Birinci forumdaki panelin kopyasını form2 de oluşturun , form1 dekini gizleyin. Geri döndüğünüzde gizlediniz paneli gösterin..
https://stackoverflow.com/questions/9468...nt-control


unit Unit130;

interface

uses
 Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
 Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Data.DB, Vcl.StdCtrls;

type
 TForm130 = class(TForm)
   Edit1: TEdit;
   Button1: TButton;
   procedure Button1Click(Sender: TObject);
 private
   edit2: TEdit;
 public
 end;

var
 Form130: TForm130;

implementation

{$R *.dfm}

procedure TForm130.Button1Click(Sender: TObject);
var
 component: TComponent;
 stream: TMemoryStream;
begin
 RegisterClass(TEdit);
 stream := TMemoryStream.Create;
 try
   stream.WriteComponent(edit1);
   stream.Position := 0;
   component := stream.ReadComponent(nil);
   edit2 := component as TEdit;

   { this is necessary to make the following InsertComponent work }
   edit2.Name := 'Edit2';
   InsertComponent(edit2);

   edit2.Parent := Self;
   edit2.Top := edit2.Top + 30;
 finally
   stream.Free;
 end;
end;

end.



Can alıcı nokta Edit2.Parent olayı. o kısmın sırtını form 2 ye yasladığınız zaman sorun çözülecektir diye düşünüyorum.

Diğer bir örnek de burada var.

https://stackoverflow.com/questions/2390...t-run-time