Delphi. Список TListBox

Компоненты   15 января 2013  Автор статьи: admin 

Компонент TListBox представляет собой визуальный список строк (string). В данном списке можно осуществлять выбор элементов (одного или нескольких), добавлять элементы, удалять.
Расположен на вкладке Standart, выглядит на форме следующим образом:
Tlistbox Delphi

Основные свойства компонента
Свойство Описание
Items:TStrings Коллекция (список) непосредственно самих строк (типа TStringList/TStrings), которые будут отображены в компоненте. Наиболее важное свойство данного компонента. Работа с типом TStringList рассмотрена в этой статье.
Font Задает шрифт списка.
Sorted:boolean Сортировка по алфавиту.
ItemIndex:integer Хранит идентификатор выделенного элемента. Если элемент выделен не был, то равен -1.
MultiSelect:boolean Позволяет выделять сразу несколько элементов.
Selected[X: Integer] :boolean Представляет собой массив элементов типа Boolean, который характеризует состояние выделения каждого элемента.
TopIndex:integer Индекс первого видимого элемента в списке.
Count Хранит количество элементов.
Основные события компонента
Событие Описание
OnClick Событие нажатия на список кнопкой мыши.
OnDblClick Событие двойного нажатия на список кнопкой мыши.
OnDrawItem Событие отрисовки каждого отдельного элемента списка. Позволяет реализовывать другой внешний вид для каждого элемента посредством Canvas, например, добавить изображения, или какие-то дополнительные надписи.
Примеры работы
Пример Исходный код
Добавление строки [cci lang=»delphi»]ListBox1.Items.Add(«Строка»); {или} ListBox1.Items.Add(s); {, где s: string}[/cci]
Удаление строки, зная ее индекс (идентификатор) [cci lang=»delphi»]ListBox1.Items.Delete(a); //, где а:integer[/cci]
Удаление выбранной строки [cci lang=»delphi»]ListBox1.Items.Delete(ListBox1.ItemIndex); // Если строка не была выбрана (ItemIndex = -1), то возникнет ошибка. Желательно сделать перед удалением проверку ItemIndex на -1.[/cci]
Проверить, выбрана ли строка [cci lang=»delphi»]if ListBox1.ItemIndex <> -1 then {выбрана} else {не выбрана}; [/cci]
Вставить определенную строку в определенную позицию [cci lang=»delphi»]ListBox1.Items.Insert(p, s); //, где p — позиция, s — строка[/cci]
Очистить список [cci lang=»delphi»]ListBox1.Items.Clear;[/cci]
Загрузить содержимое списка из файла [cci lang=»delphi»]ListBox1.Items.LoadFromFile(fn); //, где fn — абсолютный или относительный путь для файла[/cci]
Сохранить содержимое списка из файла [cci lang=»delphi»]ListBox1.Items.SaveToFile(fn); //, где fn — абсолютный или относительный путь для файла[/cci]

Научиться программировать

  • на Delphi

  • на Java

  • на C++