HotXLS-Dokumentation

Arbeitsmappen-Viewer-Funktion

Übersicht

Neben der Dateimanipulation müssen Delphi-Desktop-Anwendungen Arbeitsmappen oft auch anzeigen und bearbeiten; HotXLS enthält ein visuelles VCL-Steuerelement, das eines der beiden Arbeitsmappenmodelle direkt rendert

TXLSWorkbookViewer-Steuerelement

Die Komponente TXLSWorkbookViewer bietet Bildlauf, rechteckige Auswahl, Bearbeitung, Formeleingabe, Kommentare, Hyperlinks, bedingte Formatierung und Druckvorschau — ganz ohne temporäre Dateien

Weisen Sie für klassisches XLS Workbook und für XLSX- oder ODS-Arbeitsmappen XlsxWorkbook zu, oder rufen Sie LoadFromFile auf, damit das Steuerelement die geladene Arbeitsmappe selbst besitzt

Bearbeitung und Formeleingabe

Setzen Sie Editable auf True, um Bearbeitung per F2, Doppelklick, druckbaren Tasten, Entf und Formelleiste zu ermöglichen; geschützte gesperrte Zellen bleiben schreibgeschützt, während explizit entsperrte Zellen bearbeitbar bleiben

FormulaBarText liefert die Formel der ausgewählten Zelle inklusive führendem Gleichheitszeichen oder ihren Eingabewert; bei Zuweisung wendet die Eigenschaft eine neue Formel oder einen getippten Wert an und berechnet abhängige Formeln neu

Undo und Redo verwenden eine begrenzte Ringhistorie, gesteuert über UndoLimit; das Rückgängigmachen einer neu angelegten XLSX-Zelle stellt ihren nicht vorhandenen Sparse-Speicherzustand wieder her. Jeder Historieneintrag ist ein TXLSViewerCellState-Snapshot (Arbeitsmappentyp, Existenz, Blatt, Koordinaten, Formel, Wert und Formatzustand), der auch über die öffentliche Methode zum Auslesen des Zustands erreichbar ist

Die Bearbeitungs-Hooks sind typisierte Callbacks: OnBeforeEdit (ein TXLSViewerBeforeEditEvent) erhält den vorgeschlagenen Text und kann ihn über Allow und Text ablehnen oder umschreiben; OnAfterEdit (ein TXLSViewerAfterEditEvent) meldet den übernommenen Text

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

Bereichs- und Referenzauswahl

Mit Shift-Navigation, Ziehen mit der Maus oder SelectRange erstellen Sie eine rechteckige Auswahl, die über SelectionTop, SelectionLeft, SelectionBottom, SelectionRight und SelectedRange zugänglich ist

BeginReferencePick aktiviert den Formelreferenzmodus, und OnReferencePick (ein TXLSViewerReferenceEvent) veröffentlicht den aktuellen A1-Bereich bei jeder Änderung der Auswahl; rufen Sie EndReferencePick auf, sobald der übergeordnete Formeleditor die Referenz übernommen hat

Anzeigeeigenschaften

Prüfen Sie die nachfolgenden Konfigurationssteuerelemente