掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
TMemoryStreamでイベントハンドラを別のオブジェクトにコピーするには? (ID:25506)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
> published のイベントですか? はい。 TEdit.OnChange() を含め引き継がれたイベントはありません。 以下、ソースの抜粋をあげます。 type TMyEdit = class(TEdit) public constructor CreateClone(Original: TEdit); end; constructor TMyEdit.CreateClone(Original: TEdit); var MemStream: TMemoryStream; begin Create(Original.Owner); Self.Parent := Original.Parent; MemStream := TMemoryStream.Create; try MemStream.WriteComponent(Original); Original.Free; MemStream.Position := 0; MemStream.ReadComponent(Self); finally MemStream.Free; end; end; procedure TForm1.FormCreate(Sender: TObject); begin Edit1 := TMyEdit.CreateClone(Edit1); end; procedure TForm1.Edit1Change(Sender: TObject); begin Label1.Caption := Edit1.Text; end;
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.