18.2.10. TcheckListBox - группа независимых переключателей

Подобно тому как TRadioGroup группирует зависимые переключатели, TcheckListBox группирует независимые переключатели, позволяя обратиться к любому из них по индексу.

Чтобы вставить в компонент группу независимых переключателей, следует раскрыть редактор его свойства items и ввести одну или несколько текстовых строк - каждая строка будет соответствовать поясняющей надписи справа от переключателя.

 

Свойства компонента:

property AllowGrayed: Boolean;

Разрешает/запрещает использовать в переключателях третье состояние cbGrayed

property BorderStyle: TBorderStyle;

Определяет тип рамки, очерчивающей компонет: bsNone - нет рамки; bsSingie - рамка толщиной в 1 пиксель

property Canvas: TCanvas;

Это свойство используется для программной прорисовки опций

property Checked[Index:

Integer]: Boolean;

Содержит выбор пользователя типа Да/Нет для переключателя с индексом index. Состояния cbUnchecked И cbGrayed отражаются как False

property Columns: Integers;

Определяет количество колонок опций

property Flat: Boolean;

Разрешает/запрещает трехмерную прорисовку окошек выбора

property Header[Index: Integer] : Boolean;

Запрещает прорисовку окошка выбора для опции с индексом index. Таким образом вставляются заголовки отдельных секций

property HeaderBackgroundColor: TColor;

Цвет фона для заголовка (см. свойство Header)

property HeaderColor:TColor;

Цвет текста для заголовка (см. свойство Header)

property IntegralHeight:

Boolean;

 

 

Если имеет значение True, компонент автоматически изменяет высоту так, чтобы в нем полностью отображались опции, в противном случае последняя опция может не полностью отображаться в окне компонента

property ItemEnabled[Index:

Integer]: Boolean;

Разрешает/запрещает выбор опции с индексом Index

property ItemHeight: Integer;

 

 

Если свойство Style компонента имеет значение IsOwnerDrawFixed, значение ItemHeight Определяет высоту каждой опции компонента. При других значениях Style это свойство игнорируется

property Itemlndex: Integer;

Содержит индекс выбранной опции (индексация опций начинается с нуля)

property Items: TStrings;

Содержит опции компонента

property MultiSelect: Boolean;

Если содержит True, пользователь может выбирать несколько опций

property SelCount: Integer;

Содержит количество выбранных опций компонента, если свойство MultiSelect содержит True

property Selected[Index: Integer]: Boolean;

Содержит True, если опция с индексом index выбрана

property Sorted: Boolean;

Сортирует по алфавиту надписи на переключателях

property State[Index: Integer] : TCheckBoxState;

Содержит состояние переключателя с индексом Index: cbUnchecked - нет; cbChecked ~ да; cbGrayed - не совсем

type TListBoxStyle =

(IbStandard, IbOwnerDraw-

Fixed, IbOwnerDrawVariable);

Определяет способ прорисовки опций компонента: IbStandard - опции прорисовывает Windows; ibOwnerDrawFixed - компонент использует программный метод прорисовки опций, каждый из

property Style: TListBox Style;

 

 

которых имеет одинаковую высоту ItemHeight; IbOwnerDrawVariable - опции прорисовываются программно и могут иметь разную высоту

property TabWidth: Integer;

Определят ширину табулостопов

property Toplndex: Integer;

Содержит индекс самой первой отображаемой опции

Для компонента определено событие

property OnClickCheck: TNotifyEvent;

которое наступает при изменении состояния любого переключателя.