CloneComponent
Części dokumentów, dane zmienne, edycja dokumentów
Opis
Metoda abstrakcyjna klasy TPDFlibDynamicComponent zwracająca niezależną kopię komponentu wraz z całym modyfikowalnym stanem paginacji
Składnia
Function TPDFlibDynamicComponent.CloneComponent:
TPDFlibDynamicComponent; Virtual; Abstract;
Uwagi
Nadpisania muszą kopiować każde pole, które mutuje Compose, ponieważ sesja komponuje na roboczym klonie i zatwierdza ten klon dopiero po walidacji i umieszczeniu jego Form XObject
Sesja polega na klonie w kilku miejscach:
AttachComponent klonuje dwukrotnie dla zrzutów początkowego i bieżącego, ComposeNextLayout klonuje raz na próbę dla komponentu roboczego, a CloneCurrentComponent klonuje zatwierdzony zrzut do inspekcji
Wywołujący
CloneComponent jest właścicielem zwróconej instancji i zwalnia ją niezależnie od komponentu źródłowego
Wynik
Nil jest traktowany przez sesję jako niepowodzenie klonowania, po czym sesja odrzuca wywołującą operację bez zmieniania zapisanego stanu
Przykład
function TNumberedPagesComponent.CloneComponent:
TPDFlibDynamicComponent;
begin
Result := TNumberedPagesComponent.Create(FNextPage, FPageCount);
end;
Wartości zwracane
| Nowa instancja | Niezależna kopia, której późniejsze wywołania Compose nie mogą wpłynąć na komponent źródłowy |
|---|---|
Nil | Nadpisanie nie potrafiło utworzyć kopii; sesja odrzuca AttachComponent i próby kompozycji zależne od klonu |
Zobacz również
TPDFlibDynamicComponent, TPDFlibDynamicComponentSession, Compose, CloneCurrentComponent, AttachComponent