Dokumentace HotXLS

Funkce prohlížeče sešitů

Přehled

Kromě manipulace se soubory potřebují desktopové aplikace Delphi často zobrazit a upravovat sešity; HotXLS obsahuje vizuální VCL ovládací prvek, který vykreslí libovolný z obou modelů sešitů přímo

Ovládací prvek TXLSWorkbookViewer

Komponenta TXLSWorkbookViewer poskytuje rolování, obdélníkový výběr, editaci, zadávání vzorců, komentáře, hypertextové odkazy, podmíněné formátování a náhled tisku bez vytváření dočasných souborů

Pro Classic XLS přiřaďte Workbook, pro sešity XLSX a ODS pak XlsxWorkbook, nebo zavolejte LoadFromFile a nechte ovládací prvek vlastnit načtený sešit

Editace a zadávání vzorců

Nastavte Editable na True, chcete-li zapnout editaci přes F2, dvojité kliknutí, tisknutelné klávesy, Delete a formulářový řádek; chráněné uzamčené buňky zůstávají jen pro čtení, zatímco explicitně odemčené buňky zůstávají editovatelné

FormulaBarText vrací vzorec vybrané buňky včetně vodicího rovnítko, případně její vstupní hodnotu, a přiřazení vlastnosti aplikuje nový vzorec či zadanou hodnotu a přepočítá závislé vzorce

Undo a Redo používají ohraničenou kruhovou historii řízenou UndoLimit; vrácení nově vytvořené buňky XLSX obnoví její neexistující stav sparse úložiště. Každá položka historie je snímek TXLSViewerCellState (druh sešitu, existence, list, souřadnice, vzorec, hodnota a stav formátu), dostupný i přes veřejnou metodu pro čtení stavu

Hooky editace jsou typované callbacky: OnBeforeEdit (typ TXLSViewerBeforeEditEvent) obdrží navrhovaný text a může jej vetoovat či přepsat přes Allow a Text, a OnAfterEdit (typ TXLSViewerAfterEditEvent) hlásí potvrzený text

Viewer.Editable := True;
Viewer.GoToCell(2, 3);
Viewer.FormulaBarText := '=A1*2';
Viewer.Undo;
Viewer.Redo;

Výběr oblastí a referencí

K vytvoření obdélníkového výběru vystaveného přes SelectionTop, SelectionLeft, SelectionBottom, SelectionRight a SelectedRange použijte navigaci se Shift, tažení myší nebo SelectRange

BeginReferencePick zapne režim výběru referencí pro vzorce a OnReferencePick (typ TXLSViewerReferenceEvent) publikuje aktuální oblast v A1 vždy, když se výběr změní; až hostitelský editor vzorců referenci přijme, zavolejte EndReferencePick

Vlastnosti zobrazení

Podívejte se na ovládací prvky konfigurace níže