Шаг 8.
Компоненты библиотеки RX.
Вкладка Controls. Компонент TTextListBox

    На этом шаге мы рассмотрим компонентTTextListBox.

    Компонент TTextListBox предназначен для организации списков текстовых строк на основе стандартного элемента управления Windows (ListBox), и позволяет пользователю осуществить выбор одного или более элементов из этого списка.

    В отличие от компонента TListBox, TTextListBox предназначен только для текстовых строк, но он автоматически устанавливает горизонтальную полосу прокрутки при изменении содержимого свойства Items.

    Внешний вид компонента (рис.1):


Рис.1. Компонент TTextListBox

    Рассмотрим свойства компонента TTextListBox:

Таблица 1. Свойства компонента >TTextListBox
Свойство Описание
property AutoSize: Boolean; Если содержит значение True, то размер компонента увеличивается до размера формы автоматически.
type TBorderStyle = bsNone..bsSingle;
property BorderStyle: TBorderStyle;
Определяет стиль рамки:
  • bsNone - нет рамки;
  • bsSingle - рамка толщиной 1 пиксель.
property ExtendedSelect: Boolean; Если ExtendedSelect = True и MultiSelect = True , выбор пункта без одновременного нажатия клавиши или отменяет предыдущий выбор
property MultiSelect: Boolean; Разрешает/отменяет возможность выбора нескольких пунктов
property Items: TStrings; Содержит набор строк, показываемых в компоненте
property Sorted: Boolean; Разрешает/отменяет сортировку строк в алфавитном порядке

    Приведем пример: создадим приложение, которое позволит работать со списком.

    Поместим на форму компоненты TextListBox1, ComboEdit1, RxLabel1, RxSpeedButton1 и RxSpeedButton2 (рис.2).


Рис.2. Форма с размещенными на ней компонентами TextListBox1, ComboEdit1, RxLabel1, RxSpeedButton1 и RxSpeedButton2

    Компонент TextListBox1 состоит из пяти пунктов (свойство Items):

    Свойство Sorted = True – сортировка строк в алфавитном порядке разрешена.

    Свойство ShowHint = True , Hint = “Вы можете удалить строку, щелкнув два раза по кнопке мыши! ” – при наведении курсора на компонент будет появляться данная подсказка.

    Свойство Caption компонента RxLabel1 имеет значение “Введите необходимый текст”.

    RxSpeedButton1: свойство Caption – “Очистить список”.

    RxSpeedButton2: свойство Caption – “Удалить строку”.

    Для компонента ComboEdit1 напишем обработчик события OnClick:

procedure TForm1.ComboEdit1ButtonClick(Sender: TObject);
begin
         TextListBox1.AddItem(ComboEdit1.Text,TextListBox1);   //добавляем строку
end;

    Для компонента RxSpeedButton1 напишем обработчик события OnClick:

procedure TForm1.RxSpeedButton1Click(Sender: TObject);
begin
  TextListBox1.Clear;        
end;

    Для компонента RxSpeedButton2 напишем обработчик события OnClick:

procedure TForm1.RxSpeedButton2Click(Sender: TObject);
begin
    TextListBox1.DeleteSelected;              //удалим выбранный пункт списка  
end;

    Для компонента TextListBox1 напишем обработчик события OnDblClick:

procedure TForm1.TextListBox1DblClick(Sender: TObject);
begin
   TextListBox1.DeleteSelected;           //удалим выбранный пункт списка
end;

    Работа программы показана на рис.3(а-в).


Рис.3а. Появление подсказки


Рис.3б. Добавление строки в список


Рис.3в. Удаление строки из списка

    Текст этого примера можно взять здесь.

    На следующем шаге мы рассмотрим компонент TRxCheckListBox.




Предыдущий шаг Содержание Следующий шаг