HotXLS Belgeleri

TXLSWorkbookViewer Bileşeni

TXLSWorkbookViewer, iki çalışma kitabı motorundan birinden gelen çalışma sayfalarını Microsoft Excel ya da COM otomasyonu olmadan görüntüleyen bir VCL denetimidir

Çalışma kitabı kaynakları

Gezinme

Denetim; yatay ve dikey kaydırma çubukları, fare tekerleğiyle kaydırma, fareyle sürükleme, Shift ile aralık genişletme, ok tuşları, Home, Page Up, Page Down ve Tab gezinmesi sağlar

GoToCell bir satır ve sütun seçer, SelectRange bir dikdörtgen seçer, NextWorksheet ve PreviousWorksheet sayfalar arası geçiş yapar, SelectedRange ise normalize edilmiş A1 başvurusunu verir

Düzenleme ve hesaplama

F2, çift tıklama, yazılabilir tuş, Delete ve formül çubuğu düzenlemelerine izin vermek için Editable değerini True yapın; korumalı bir çalışma sayfasındaki kilitli hücreler salt okunur kalır

BeginEdit, CommitEdit ve CancelEdit yerinde düzenleyiciyi yönetir; EditSelectedCell ve FormulaBarText harici bir formül çubuğunu destekler

Onaylanan düzenlemeler formül, Boolean, tamsayı, kayan noktalı sayı, metin ve boş girdi olarak ayrıştırılır; ardından bağımlı formüller yeniden hesaplanır ve koşullu biçimlendirme ile sayfalama önbellekleri geçersiz kılınır

Undo ve Redo, O(1) sınırlı dairesel bir geçmiş kullanır; kapasiteyi kontrol etmek ya da geçmişi devre dışı bırakmak için UndoLimit değerini ayarlayın (sıfır geçmişi kapatır)

Delete veya ClearSelectedRange, seçimi tek işlem olarak temizler; Ctrl+C ve CopySelectedRange sekmelerle ayrılmış Unicode metni kopyalarken Ctrl+V, PasteSelectedRange ve PasteText, dikdörtgen bir metin bloğunu seçimin sol üst köşesine tek undo girdisiyle yapıştırır

Koruma ve yapısal ön uçuş, mutasyondan önce engellenmiş bir aralığın tamamını reddeder; undo ve redo her iki modelde de yerel zengin metni, formül önbelleklerini, stilleri ve yok olan hücreleri korur ve her geçmiş denemesinde aynı koruma denetimini uygular

Mevcut dizi formülleri, veri tablosu bölgeleri ve birleştirmeyi kesen çok hücreli yapıştırmalar reddedilir; tek birleştirilmiş-anchor düzenlemeleri ve tüm birleştirmeyi kapsayan temizlemeler birleştirme geometrisini korurken kısmi birleştirilmiş-aralık temizlemeleri reddedilir

Paylaşılan TXLSWorkbookEditHistory motoru denetimsiz de örneklenabilir; koordinat, yaşam süresi, hesaplama ve işlem sınırı kuralları için başsız düzenleme işlemleri bölümüne bakın

Formül başvurusu seçimi

Bir ana formül düzenleyicisi çalışma sayfası başvurusu toplarken BeginReferencePick çağırın; EndReferencePick çağrılana kadar her seçim değişikliği, geçerli A1 aralığıyla OnReferencePick olayını tetikler

Çizim

Görüntüleyici, her çalışma sayfasının sütun genişliklerini, satır yüksekliklerini ve biçimlendirilmiş görüntü metnini kullanır; klasik düz dolguları ve yazı tipi stillerini çizer ve yapılandırılabilir başlıklar, kılavuz çizgileri ve seçim renkleri sunar

XLSX çalışma sayfalarında görüntüleyici ayrıca koşullu dolguları, yazı tipi renklerini ve vurguları, sayı biçimlerini, renk ölçeklerini, yönlü pozitif ve negatif veri çubuklarını, degrade dolguları, kenarlıkları, eksenleri, gizli değerleri ve tüm yerleşik icon-set ailelerini çizer

Görüntüleyici, etkin çalışma sayfası için hazırlanmış tek bir koşullu biçimlendirme değerlendiricisini önbelleğe alır; böylece kaydırma ve seçim yeniden çizimleri çalışma kitabını yeniden taramaz. Bağlı çalışma kitabında değer, formül, aralık ya da koşullu kural değiştirdikten sonra RefreshConditionalFormats çağırın

XLSX çizimi, seyrek hücreleri ve aralık stili katmanlarını boş koordinatları indekslemeden denetler; böylece kaydırma, görünür boş hücreleri somutlaştırmaz ve çalışma sayfası deposunu büyütmez

Baskı önizleme

Etkin çalışma sayfasını, PDF sayfa geometrisi ve sayma işlemlerinin kullandığı paylaşılan TXLSPaginationModel üzerinden görüntülemek için PrintPreview değerini True yapın

PreviewPage bir tabanlıdır ve PreviewPageCount sınırına kırpılır; önizleme etkinken ok, Page Up, Page Down, Home, End, fare tekerleği ve dikey kaydırma komutları mantıksal sayfalar arasında gezinir

PaginationModel önbellekteki modeli dışa açar; SavePreviewPageAsMetafile seçili mantıksal sayfayı EMF olarak yazar ve RefreshPagination, değer, boyut, baskı ayarı, sayfa sonu, başlık ya da çizim değişikliklerinden sonra önbelleği yeniden kurar

Olaylar

Delphi örneği

Viewer := TXLSWorkbookViewer.Create(Self);
Viewer.Parent := Self;
Viewer.Align := alClient;
Viewer.XlsxWorkbook := Workbook;
Viewer.Editable := True;
Viewer.SelectRange(2, 1, 5, 3);
Caption := Viewer.SelectedRange;
Viewer.GoToCell(2, 3);
Viewer.FormulaBarText := '=A1*2';
Viewer.Undo;
Viewer.Redo;
Viewer.RefreshConditionalFormats;
Viewer.PrintPreview := True;
Viewer.PreviewPage := 1;
Viewer.SavePreviewPageAsMetafile('Preview.emf');
Viewer.GoToCell(12, 4);
Caption := Viewer.WorksheetName + ': ' + Viewer.SelectedCellText;

Dosya açma ve çalışma sayfası denetimleriyle çalışma zamanında kurulan eksiksiz bir görüntüleyici için Demo\Delphi\WorkbookViewer örneğine bakın