html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" XLSX Facade pregled - HotXLS Developer Reference
HotXLS dokumentacija

XLSX Facade pregled (lxHandleX)

lxHandleX je namjenska fasadna jedinica za Excel 2007+ (.xlsx) i OpenDocument proračunska tablica (.ods) tijekovi rada s radnom knjigom. Koegzistira s izvornim lxHandle fasada kako bi naslijeđeni kod nastavio raditi bez ikakvih promjena

Hijerarhija klasa

XLSX fasada izlaže sljedeće klase

type
  TXLSXWorkbook           = class  // top-level workbook with SaveAs / Open
  TXLSXHtmlExportOptions  = class  // HTML document, style, BOM, and table class options
  TODSExportOptions        = class  // ODS export options for generator, chart, and image output
  TXLSXSheets             = class  // worksheet collection on the workbook
  TXLSXFonts              = class  // workbook-level font palette
  TXLSXFont               = class  // single font descriptor
  TXLSXFills              = class  // workbook-level fill palette
  TXLSXFill               = class  // single fill (pattern + fg/bg color)
  TXLSXBorders            = class  // workbook-level border palette
  TXLSXBorder             = class  // four edges + diagonal border
  TXLSXNumberFormats      = class  // workbook-level custom format codes
  TXLSXDefinedNames       = class  // workbook-level named ranges
  TXLSXWorksheet          = class  // single worksheet with cells and decorations
  TXLSXCells              = class  // cell collection on the worksheet
  TXLSXCell               = class  // single cell (value, formula, *Index style refs)
  TXLSXRange              = class  // rectangular worksheet range wrapper
  TXLSXMergedCells        = class  // merged-range collection
  TXLSXHyperlinks         = class  // hyperlink collection
  TXLSXComments           = class  // cell-comment collection
  TXLSXImages             = class  // image collection (drawings + media)
  TXLSXConditionalFormats = class  // conditional formatting rules
  TXLSXDataValidations    = class  // data-validation rules
  TXLSXTables             = class  // Excel-style table collection
  TXLSXCharts             = class  // chart collection (anchored or full-page)
  TXLSXChart              = class  // single chart (column / bar / line / pie / scatter / bubble / radar)
  TXLSXChartSeries        = class  // chart series with category, value, and bubble-size ranges
  TXLSXTextBox            = class  // standalone worksheet drawing text box
  TXLSXRichText           = class  // per-run rich-text payload for cells
  TXLSXAlignment          = class  // cell alignment / wrap / indent / rotation
  TXLSXExternalLinks      = class  // external workbook link collection
  TXLSXExternalLink       = class  // single external workbook reference (Target URL + SheetNames)
      

Ove klase su neovisne o lxHandle.TXLSWorkBook i lxHandle.TXLSWorksheet. Aplikacije koje trebaju oba formata mogu koristiti oba sučelja jedno pored drugog

uses
  lxHandle,   // XLS / HTML / RTF / CSV workbook (TXLSWorkBook)
  lxHandleX;  // XLSX workbook (TXLSXWorkbook)
      

Brzi početak

XLSX sučelje slijedi iste konvencije oblika poziva kao i BIFF sučelje — SaveAs / Open na radnoj knjizi, Sheets.Add / Sheets[i] na zbirci radnog lista, i Cells.Item[Row, Col].Value na kolekciji ćelija. Primjer u nastavku ispisuje malu radnu knjigu koja koristi svaku trenutno podržanu značajku

uses lxHandleX;

var
  wb: TXLSXWorkbook;
  ws: TXLSXWorksheet;
  bold, yellow, box, currency: Integer;
begin
  wb := TXLSXWorkbook.Create;
  try
    bold     := wb.Fonts.Add('Calibri', 12, True, False);
    yellow   := wb.Fills.AddSolid($FFFFFF00);
    box      := wb.Borders.AddBox(xlsxBorderThin);
    currency := wb.NumberFormats.Add('"$"#,##0.00');

    ws := wb.Sheets.Add('Demo');
    ws.Cells.Item[1, 1].Value := 'Hello';
    ws.Cells.Item[1, 1].FontIndex := bold + 1;
    ws.Cells.Item[1, 2].Value := 123.45;
    ws.Cells.Item[1, 2].NumberFormatIndex := currency + 1;
    ws.Cells.Item[2, 1].Value := Now;                 // tagged as date
    ws.Cells.Item[2, 2].Formula := 'SUM(B1:B1)';
    ws.Cells.Item[3, 1].FillIndex := yellow + 1;      // highlight cell
    ws.Cells.Item[3, 2].BorderIndex := box + 1;       // boxed cell
    ws.ColWidth[1] := 24;
    ws.RowHeight[1] := 28;
    ws.MergeCells(4, 1, 4, 3);
    ws.Range['A8:C10'].Merge(True);                  // merge across rows
    ws.AddHyperlink(5, 1, 'https://www.loslab.com', 'Visit losLab');
    ws.AddComment(5, 2, 'Important note', 'Kevin');
    ws.AddImageFromFile(6, 1, 'logo.png');
    ws.AddConditionalFormat('B1:B10', xlsxCfOpGreaterThan, '100');
    ws.AddListValidation('C1:C5', 'Yes,No,Maybe');
    wb.DefinedNames.Add('SalesData', 'Demo!$A$1:$B$10');
    wb.SaveAs('demo.xlsx');
  finally
    wb.Free;
  end;
end;
      

Podržane značajke

Facade sub-collection API-jevi

Klase kolekcije fasada upravljaju uvjetnim formatima, provjerama valjanosti podataka, imenovanim rasponima, slikama i tablicama. Ovdje su ključni članovi svake kolekcije:

Podržane značajke

Zajednička infrastruktura

Obje fasade dijele zajednički skup pomoćnih jedinica niže razine, što znači da su opisivači stilova, tablice raspršivanja, AVL stabla, ZIP i XML I/O, RGB-u-HLS pretvorbe i graditelji nizova napisani jednom i koristi ih bilo koja staza Zajednički pomoćnici uključuju:

Vidi također