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, например, добавить изображения, или какие-то дополнительные надписи.
Примеры работы
Пример Исходный код
Добавление строки ListBox1.Items.Add("Строка"); {или} ListBox1.Items.Add(s); {, где s: string}
Удаление строки, зная ее индекс (идентификатор) ListBox1.Items.Delete(a); //, где а:integer
Удаление выбранной строки ListBox1.Items.Delete(ListBox1.ItemIndex); // Если строка не была выбрана (ItemIndex = -1), то возникнет ошибка. Желательно сделать перед удалением проверку ItemIndex на -1.
Проверить, выбрана ли строка if ListBox1.ItemIndex <> -1 then {выбрана} else {не выбрана};
Вставить определенную строку в определенную позицию ListBox1.Items.Insert(p, s); //, где p - позиция, s - строка
Очистить список ListBox1.Items.Clear;
Загрузить содержимое списка из файла ListBox1.Items.LoadFromFile(fn); //, где fn - абсолютный или относительный путь для файла
Сохранить содержимое списка из файла ListBox1.Items.SaveToFile(fn); //, где fn - абсолютный или относительный путь для файла

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

  • на Delphi

  • на Java

  • на C++