Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Скачиваний:
70
Добавлен:
27.03.2015
Размер:
379.39 Кб
Скачать

Компонент ListBox

Компонент ListBox (список строк) расположен на вкладке Standard:

Он позволяет добавление новых строк, их удаление, поиск нужной строки, очистка всего ListBox'а и др. Строки для нашего ListBox'а хранятся в его свойстве Items. Для задания этого свойства на этапе разработки щелкните на многоточии рядом с ним в Инспекторе объектов:

Появится диалоговое окно String List Editor, в котором можно ввести элементы списка:

Если же вам надо добавить новый пункт на этапе работы программы, то надо воспользоваться методом Add упомянутого свойства Items:

ListBox1->Items->Add("New String");

Этот метод добавит новый элемент в конец списка. Если же нам надо добавить новый элемент куда-нибудь в середину, то используем метод Insert:

ListBox1->Items->Insert(1,"Roma");

Для очистки всего списка вызываем метод Clear:

ListBox1->Items->Clear();

Если нам надо удалить i-й элемент ListBox'а, то мы используем метод Delete (нумерация элементов списка идет с нуля):

ListBox1->Items->Delete(i);

Определить выделенный элемент списка позволяет свойство ItemIndex. Оно представляет из себя номер выделенного элемента. Если ни один элемент не выделен, то это свойство равно -1. Вот так, например, будет выглядеть код, который при щелчке на ListBox'е покажет в MessageBox'е номер элемента, на котором был произведен щелчок:

void __fastcall TForm1::ListBox1Click(TObject *Sender)

{

ShowMessage(IntToStr(ListBox1->ItemIndex));

}

Если вам надо, чтобы в ListBox'е пользователь имел возможность выделить сразу несколько элементов, то установите свойство MultiSelect в true (по умолчанию оно равно false).

Доступ к определенной строке можно получить через ее индекс (нумерация, как всегда, идет с нуля):

ListBox1->Items->Strings[0];

Для добавления строки служит метод Add:

ListBox1->Items->Add("Вася");

Для вставки строки в определенное место служит метод Insert:

ListBox1->Items->Insert(1,"Петя");

Свойство Count возвращает количество строк в списке:

int k = ListBox1->Items->Count;

Метод Clearпредназначен для удаления всех строк из компонента:

ListBox1->Items->Clear();

Для удаления же отдельного элемента с номером kслужит методDelete:

ListBox1->Items->Delete(k);

Для поиска определенной строки служит метод IndexOf:

int k = ListBox1->Items->IndexOf("Петя");

Этот метод берет в качестве параметра искомую строку и возвращает ее номер. Если строка не найдена, то возвращается -1.

Компонент ComboBox

Компонент ComboBox (выпадающий список) расположен на вкладке Standard Палитры Компонентов:

Этот компонент по своим свойствам очень похож на компонент ListBox. Методы и свойства он имеет почти те же самые. Самое важное из них - это свойство Items. Именно в нем и хранятся все строки ComboBox'а. Из отличных от ListBox'а свойств выделим свойство Text. Оно дает нам текст в нашем ComboBox'е (т.е. то, что пользователь непосредственно видит). Вот так, например, можно добавить напечатанный пользователем текст в ComboBox:

ComboBox1->Items->Add(ComboBox1->Text);

Из полезных свойств отметим еще свойство Style. Возможные значения для него - csDropDown (ComboBox с возможностью редактирования), csDropDownList (ComboBox без возможности редактирования, т. е. пользователь может выбирать только из существующих элементов), csSimple и другие. При значении style равным csSimple ComboBox будет выглядеть приблизительно так: