18.7.2. TColorGrid - выбор или отображение цвета
Компонент предназначен для выбора и/или отображения цветов из 16-цветной палитры. Выбирать/отображать можно два цвета: основной и фоновый. Основной выбирается щелчком левой кнопки мыши и отображается символами fg, фоновый выбирается правой кнопкой и отображается символами bg (если оба цвета совпадают, соответствующая клетка таблицы помечается символами fb).
Свойства компонента:
property BackgroundColor: TColor; |
Содержит выбранный фоновый цвет |
property BackgroundEnabled: Boolean;
|
Разрешает/запрещает выбор фонового цвета. Игнорируется, если clickEnablesColor имеет значение True |
property Backgroundlndex: Integer; |
Содержит индекс выбранного фонового цвета |
property ClickEnablesColor: Boolean; |
Разрешает/запрещает выбор цветов |
type TGridOrdering = (gol6xl,go8x2, go4x4, go2x8, golxl6); property GridOrdering: TGridOrdering; |
Определяет конфигурацию таблицы: первая цифра - количество столбцов, вторая - количество рядов |
property ForegroundColor: TColor; |
Содержит выбранный основной цвет |
property ForegroundEnabled: Boolean; |
Разрешает/запрещает выбор основного цвета. Игнорируется, если ClickEnablesColor имеет значение True |
property Foregroundlndex: Integer; |
Содержит индекс выбранного основного цвета |
property Selection: Integer; |
Содержит индекс последнего выбранного цвета |
Индекс цвета - это число в диапазоне О... 15, указывающее номер соответствующей ячейки в порядке перехода от самых темных цветов к самым светлым: 0 - ячейка с черным цветом, 1 - с коричневым, ..., 15 - с белым цветом.
Пары свойств BackgroundEnabled - ClickEnablesColor И ForegroundEnabled - ClickEnablesColor запрещают выбор и отображение соответствующего цвета только в том случае, когда каждое из них имеет значение False. Однако даже в этом случае свойство selection хранит номер ячейки таблицы, по которой последний раз был произведен щелчок левой или правой кнопкой мыши. Это свойство изменяется до возникновения события от мыши и при необходимости может использоваться для выбора цвета без его отображения. С помощью метода
function ColorToIndex(AColor: TColor): Integer;
программа может получить индекс табличного цвета, наиболее близкого к цвету AColor. Событие
property OnChange: TNotifyEvent;
возникает только при разрешенном выборе/отображении соответствующего цвета.