использования компонента ТСотbоВохЕх
Рисунок 18.34 . Пример использования компонента ТСотbоВохЕх
Специфичные свойств а компонента:
property Images: TCustomImageList; | Определяет объект-хранилище изображении |
property ItemsEx: TComboExItems; | Определяет строки списка выбора |
property MaxLength: Integer; | Определяет максимальное количество символов, которые пользователь может ввести в окне редактора |
type TComboBoxExStyle = (csExDropDown, csExSimple, csEx-DropDownList) ; property Style: TComboBoxExStyle; | Определяет стиль компонента: csExDrop-Down с кнопкой раскрытия списка и возможностью ручного ввода текста; csExSim-ple - без кнопки (список всегда раскрыт), высота списка определяется свойством Height; csExDropDownList -с кнопкой раскрытия списка, но пользователь не может ввести текст выбора вручную |
Строки ItemsEx списка выбора определяет класс TComboExItems, имеющий такие свойства:
property Comboltems[const Index: Integer]: TComboExItem; property Items[const Index: Integer] : TListControlItem; default; type TLi'stItemsSortType = (stNone, stData, stText, stBoth); property SortType: TSortType;
Класс TListControlItem имеет три специфичных свойства: caption (String), Data (Pointer) И Imagelndex (integer), с помощью которых описываются текст элемента, а также связанные с ним данные и индекс изображения. Для установки значений этих свойств используются методы SetCaption, SetData И Setlmagelndex класса TListControlItem.
Класс TComboExitem, с помощью которого описываются строки списка в целом, имеет такие свойства:
property Caption: Strings-property Data: Pointed; | Текст элемента выбора Указатель на связанные с элементом данные |
property Imagelndex: Timagelndex; | Индекс изображения для невыбранного элемента |
property Indent: Integer; | Отступ элемента от левого края списка |
property Overlaylmagelndex: Timagelndex; | Индекс изображения-маски |
property SelectedlmageIndex: Timagelndex; | Индекс изображения для выбранного элемента |
Нетрудно заметить, что свойства Caption, Data и Imagelndex дублируют одоименные свойства класса TListControlltem. Свойство Overlaylmagelndex ссылается на черно-белый растр, который накладывается на изображения Imagelndex И Selectedlmagelndex. Этопозволяет реализовать разного рода анимационные эффекты при выводе изображений.