Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
_Delphi_1курс лекции / Тема 04 Компоненты ввода и отображения.doc
Скачиваний:
56
Добавлен:
23.03.2015
Размер:
194.56 Кб
Скачать

Компоненты выбора из списков Компонент ListBox(окно списка)

Страница Standard

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

Items:TStrings – Массив строк списка. Свойства класса TStrings позволяют формировать и изменять список. Заполнить его во время проектирования можно, нажав кнопку с многоточием около этого свойства в окне Инспектора Объектов. Во время выполнения работать с этим свойством можно, пользуясь свойствами и методами класса TStrings - Clear, Add и другими (См. свойствоLinesкомпонентаMemo).

MultiSelect: Boolean– Указывает, можно ли выбрать в окне списка несколько элементов одновременно. Если MultiSelect = false (значение по умолчанию), то пользователь может выбрать только один элемент списка. В этом случае можно узнать индекс выбранной строки из свойства ItemIndex

ItemIndex : Integer Указывает порядковый номер элемента, выделенного в списке. доступного только во время выполнения. Если ни одна строка не выбрана, то ItemIndex = -1. Начальное значение ItemIndex невозможно задать во время проектирования. По умолчанию ItemIndex = -1. Это означает, что ни один элемент списка не выбран. Если вы хотите задать этому свойству какое-то другое значение, т.е. установить выбор по умолчанию, который будет показан в момент начала работы приложения, то сделать это можно, например, в обработчике события OnCreate формы, введя в него оператор вида:

ListBox1.ItemIndex:=0;

Если допускается множественный выбор (MultiSelect = true), то значение ItemIndex соответствует тому элементу списка, который находится в фокусе.

Selected[Index: Integer]: Boolean – Индексированный массив, определяющий, какие элементы списка выделены. При множественном выборе проверить, выбран ли данный элемент, можно проверив свойство Selected. Например, следующий код отображает сообщения вида «Выбрана строка ...:..:» обо всех выбранных строках.

for i:=0 to ListBoxl.Items.Count - 1 do

if (ListBoxl.Selected[i])

then

ShowMessage('Выбрана строка ' + IntToStr(i+1) + ': ' + ListBoxl.Items.Strings[i]);

ExtendedSelect:Boolean– Определяет, может ли пользователь при MultiSelect = true выбрать несколько последовательно расположенных элементов, держа нажатой клавишу Shift или выделить не прилегающие друг к другу элементы, если будет удерживать во время выбора нажатой клавишу Ctrl. Если же ExtendedSelect = false, то клавиши Shift и Ctrl при выборе не работают.

Columns: Integerопределяет число столбцов, в которых будет отображаться список, если он не помещается целиком в окне компонента ListBox.

Sorted: Booleanпозволяет упорядочить список по алфавиту. При Sorted = true новые строки в список добавляются не в конец, а по алфавиту.

Style:TListBoxStyle, гдеTListBoxStyle= (lbStandard,lbOwnerDrawFixed,lbOwnerDrawVariable,lbVirtual,lbVirtualOwnerDraw). – Определяет, будет ли окно списка стандартным, отображающим только текст, или будет позволять отображение также графических образов. СвойствоStyle, установленное в lbStandard (значение по умолчанию) соответствует списку строк. Другие значения Style позволяют отображать в списке не только текст, но и изображения.

Методы

procedure Clear; – Удаляет текст из окна.

procedure ClearSelection; – Удаляет текст, выделенный в окне.

procedure SetFocus; – Передает фокус элементу, активизирует его.

function Focused: Boolean;– Определяет, инициирован ли оконный компонент (имеет ли входной фокус), то есть является ли оконный компонент активным.

function ItemAtPos(Pos: TPoint; Existing: Boolean): Integer; – Возвращает индекс элемента списка, соответствующего указанным координатам;

function ItemRect(Item: Integer): TRect; – Возвращает координатыпрямоугольника, описывающего указанный элемент списка.

События

OnClickНаступает при щелчке на элементе списка