ZColorStringGrid

Delphi grid

zcolorstringgrid screenshot

Из-за лени (надоело каждый раз в OnDrawCell писать код для выравнивания текста...) было решено доработать StringGrid для нужного поведения.
Протестировано на Delphi 5-7, Borland Developer Studio 2005, BDS 2006, CodeGear Delphi 2007, CodeGear RAD Studio 2009 и 2010. Также заработало на C++ Builder 4-6 (нужно заменить *.hpp)

Скачать (v0.2)

Основные возможности:

  • Выравнивание текста в ячейке по горизонтали и вертикали
  • У каждой ячейки свой "стиль" (цвет фона, шрифт (стиль, цвет), рамка)
  • Возможность объединения ячеек
  • Многострочные ячейки (не только в фиксированных ячейках)
  • Увеличение размера ячейки, если текст не помещается

Если на форму добавить компонент ZColorStringGrid, в свойствах установить 12 строк и 6 столбцов, затем в событии формы onCreate (к примеру) добавить следующий код:

  1. with ZColorStringGrid1 do
  2.  begin
  3.   MergeCells.AddRectXY(1, 0, 5, 0);
  4.   Cells[1, 0] := 'Заголовок';
  5.   CellStyle[1, 0].HorizontalAlignment := taCenter;
  6.   CellStyle[1, 0].Font.Size := 14;
  7.   CellStyle[1, 0].Font.Style := [fsBold];
  8.   CellStyle[1, 0].Font.Color := ClWhite;
  9.   MergeCells.AddRectXY(2, 3, 5, 5);
  10.   Cells[2, 3] := 'Объединённая'#13#10'ячейка';
  11.   CellStyle[2, 3].VerticalAlignment := VACenter;
  12.   CellStyle[2, 3].HorizontalAlignment := taCenter;
  13.   CellStyle[2, 3].Font.Size := 14;
  14.   CellStyle[2, 3].Font.Style := [fsBold, fsItalic, fsUnderline];
  15.   Cells[1, 7] := 'Текст';
  16.   CellStyle[1, 7].BGColor := $00FFAA;
  17.   Cells[1, 8] := 'Текст';
  18.   CellStyle[1, 8].HorizontalAlignment := taRightJustify;
  19.   CellStyle[1, 8].BGColor := $00AAFF;
  20.  end;
* This source code was highlighted with Source Code Highlighter.

то получится что-то вроде этого:

zcolorstringgrid sample

ИМХО - удобно.

Тут небольшая справка.

Оставить комментарий могут только зарегистрированные пользователи.

Войдите на сайт или зарегистрируйтесь, чтобы оставить комментарий.