ListBox в Delphi

ListBox – отображает список строк и позволяет пользователю выбрать из него необходимые строки. В список добавляются автоматически полосы прокрутки, если все строки не помещаются в окне компонента Дельфи.

listbox

Основное свойство компонента это Items (тип TStrings). Задаем во время проектирования:

lisbox items

ListBox не разрешает редактировать список пользователю после компиляции проекта, а также список всегда развернут и можно допустить множественный выбор – свойство MultiSelect. Если MultiSelect = true, то значение ItemIndex соответствует тому элементу списка, который находится в фокусе. При множественном выборе проверяется свойство Selected[Index: Integer] тип Boolean. Запретить работу клавиш Ctrl и Shift при выборе можно в свойстве ExtendedSelect, задав значение false.

Пример, следующий код для каждой из выбранных строк выдает сообщение вида «Выбрана строка…»:

For i:=0 to ListBox1.Items.Count-1 do

If (ListBox1.Selected[i]) then

ShowMessage (‘Выбрана строка’ + ListBox1.Items.Strings[i]);

Если MultiSelect = false, то выбор возможет только для одного элемента. По умолчанию индекс равен ItemIndex = -1. Лучше самому задать в событии формы OnCreate оператор вида ListBox1.ItemIndex = 0;.

Свойство Columns задает количество столбцов, Sorted — упорядочить по алфавиту.

Свойства

Свойство

Описание

Action

Property Action: TBasicAction;

Определяет действие, связанное

с данным компонентом

Anchors

Определяет привязку данного компонента

к родительскому при изменении размеров

последнего

Count

Property Count: Integer;

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

ItemIndex

Property ItemIndex: Integer;

Порядковый номер элемента,

выделенного в списке

TopIndex

Property TopIndex: Integer;

Указывает индекс элемента, видимого вверху

списка. При изменении сдвигает видимую

часть списка

Основные методы

Метод

Описание

Clear

Procedure Clear;

Удаляет все элементы

ItemAtPos

Function ItemAtPos (Pos:TPoint;

Existing: Boolean): Integer;

Возвращает индекс элемента списка,

координатами Pos

ItemRect

Function ItemRect(Item: Integer): TRect;

Возвращает прямоугольник, указанный

элемент Item списка

Show

Procedure Show;

Делает видимым невидимый индикатор

SetFocus

Procedure SetFocus;

Передает фокус элементу

Основные события:

  • OnClick – наступает при щелчке на элементе списка;
  • OnData – наступает в виртуальных списках, когда приложению надо отобразить очередную строку списка;
  • OnDataObject – наступает в виртуальных списках, когда со строками виртуального списка надо связать какие-то объекты;
  • OnDrawItem – наступает при необходимости перерисовать элемент списка;

OnKeyDown – наступает при нажатии пользователем любой клавиши (можно распознать нажатую клавишу в обработчике). OnKeyPress – событие наступает при нажатии пользователем клавиши символа (можно распознать вводимый символ в обработчике, а также запретить ввод). OnKeyUp – наступает, когда пользователь отпустил какую-либо клавишу (также можно распознать клавишу).

OnMouseItem – наступает при необходимости перерисовать элемент в списке с изменяемой высотой элементов.

. listbox делфи
. события listbox delphi
Комментирование и размещение ссылок запрещено.

Top