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
- Referenzhandbuch der WorkbookViewer-Komponente — Bearbeitung, Navigation, Ereignisse, Rendering und Vorschau-Steuerung
- DisplayGridLines-Eigenschaft — Gitterrahmen umschalten
- Zoom-Eigenschaft — Zoom-Verhältnisse des Blatts festlegen