CloneComponent
ドキュメントパーツ、可変データ、ドキュメント編集
説明
すべての可変ページネーション状態を含むコンポーネントの、呼び出し元に依存しないコピーを返す、TPDFlibDynamicComponentの抽象メソッドです
構文
Function TPDFlibDynamicComponent.CloneComponent:
TPDFlibDynamicComponent; Virtual; Abstract;
備考
オーバーライドは、Composeが変更するすべてのフィールドをコピーしなければなりません。セッションは作業用クローン上で合成を行い、そのクローンのフォームXObjectが検証され配置された後にのみコミットするためです
セッションはクローンを複数の場所で利用します。
AttachComponentは初期と現在のスナップショットのために2回クローンし、ComposeNextLayoutは作業コンポーネントのために試行ごとに1回クローンし、CloneCurrentComponentは検査のためにコミット済みスナップショットをクローンします
CloneComponentの呼び出し元は返されたインスタンスを所有し、ソースコンポーネントとは独立してそれを解放します
Nilの結果はセッションによってクローン失敗として扱われ、その場合セッションは保存された状態を変更せずに、発生源の操作を拒否します
例
function TNumberedPagesComponent.CloneComponent:
TPDFlibDynamicComponent;
begin
Result := TNumberedPagesComponent.Create(FNextPage, FPageCount);
end;
戻り値
| 新しいインスタンス | 独立したコピー。その後のCompose呼び出しはソースコンポーネントに影響を与えません |
|---|---|
Nil | オーバーライドがコピーを生成できなかった。セッションはそのクローンに依存するAttachComponentと合成の試行を拒否します |
関連項目
TPDFlibDynamicComponent、TPDFlibDynamicComponentSession、Compose、CloneCurrentComponent、AttachComponent