TXLSXStructuralEditRegistry osztály
A TXLSXWorksheet.StructuralEditRegistry koordinálja a referenciaként érzékeny frissítéseket sor- és oszlopbeszúrás, illetve -törlés után
A beépített résztvevők mindig frissítik a HotXLS képleteket, neveket, érvényesítéseket, feltételes formázásokat, megjegyzéseket, hiperhivatkozásokat, rajzokat, táblákat, lekérdezés-kötéseket, forgatókönyveket, adattáblákat, nyomtatási metaadatokat, védett tartományokat, szikragrafikonokat, tipizált kimutatásokat és a felismerhető megőrzött bővítmény-hivatkozásokat
Az alkalmazások rendezett résztvevőket regisztrálhatnak saját lap-metaadataikhoz a beépített tranzakció lecserélése nélkül
Deklarációk
type
TXLSXStructuralEdit = record
RowFrom: Integer;
RowDelta: Integer;
ColFrom: Integer;
ColDelta: Integer;
end;
IXLSXStructuralEditParticipant = interface
procedure ApplyStructuralEdit(Worksheet: TXLSXWorksheet;
const Edit: TXLSXStructuralEdit);
end;
TXLSXStructuralEditRegistry = class
procedure RegisterParticipant(
const Participant: IXLSXStructuralEditParticipant);
procedure UnregisterParticipant(
const Participant: IXLSXStructuralEditParticipant);
procedure Clear;
property Count: Integer;
end;
Szerkesztési mezők
| RowFrom | Az érintett első egytől kezdődő sor, vagy nulla, ha a sorok változatlanok |
| RowDelta | Pozitív beszúrt sorszám vagy negatív törölt sorszám |
| ColFrom | Az érintett első egytől kezdődő oszlop, vagy nulla, ha az oszlopok változatlanok |
| ColDelta | Pozitív beszúrt oszlopszám vagy negatív törölt oszlopszám |
Résztvevő-szabályok
- A résztvevők regisztrációs sorrendben futnak az összes beépített hivatkozásfrissítés után
- Ugyanazon interfész többszöri regisztrálásának nincs hatása
- A
Countcsak az alkalmazás-résztvevőket jelenti, mert a beépített frissítések mindig aktívak - A résztvevők nem módosíthatják a regisztrációt, és nem indíthatnak másik szerkezeti szerkesztést a visszahívásból
Példa
type
TMetadataUpdater = class(TInterfacedObject,
IXLSXStructuralEditParticipant)
public
procedure ApplyStructuralEdit(Worksheet: TXLSXWorksheet;
const Edit: TXLSXStructuralEdit);
end;
Updater := TMetadataUpdater.Create;
Sheet.StructuralEditRegistry.RegisterParticipant(Updater);
Sheet.InsertRows(4, 2);