AttachComponent
ドキュメントパーツ、可変データ、ドキュメント編集
説明
TPDFlibDynamicComponentSessionの初期と現在の両方のコンポーネントスナップショットを、呼び出し元所有コンポーネントの新しいクローンで置き換え、すべての進行状態をクリアします
構文
Function TPDFlibDynamicComponentSession.AttachComponent(
AComponent: TPDFlibDynamicComponent): Integer;
パラメータ
AComponent | 呼び出し元所有のコンポーネント。そのCloneComponentが新しい初期スナップショットと新しい現在スナップショットの両方を提供します |
|---|
備考
両方のクローンは、保存されたスナップショットが解放される前に作成されます。そのため、CloneComponentを返すNilは、以前のコンポーネント、合成カウント、完了フラグ、リトライ状態をそのまま残します
成功すると、セッションは古いスナップショットを解放し、新しいペアを保存して、
CompositionCountをゼロへリセットし、Completed、KeepTogetherRetryPending、LastRetryReason、LastRequiredSlotHeightをクリアします
セッションは
AComponent
AttachComponentの所有権を決して取得しません。保存されるのはクローンのみであるため、呼び出し元は渡されたインスタンスを独立して保持し、解放します
セッションのコンストラクタはNilを呼び出すため、
例
Replacement := TNumberedPagesComponent.Create(1, 5);
try
if Session.AttachComponent(Replacement) = 1 then
Status := Session.ComposeNext(PageNumber, 36, 36, 540, 720,
Placement);
finally
Replacement.Free;
end;
戻り値
1 | 両方のクローンが作成され、新しい初期と現在のスナップショットとしてコミットされ、すべての進行状態がクリアされた |
|---|---|
0 | AComponentがNilであるか、いずれかのCloneComponent呼び出しがNilを返した。以前のスナップショットと状態は保持される |
関連項目
TPDFlibDynamicComponentSession、TPDFlibDynamicComponent、CloneComponent、CloneCurrentComponent、ComposeNextLayout