Окна списков и комбинированные окна
<$I[]окно списка (list box)> Окна списков (list boxes) и <$I[]комбинированное окно (combo box)> комбинированные окна (combo boxes) представляют собой элементы, позволяющие пользователю приложения делать выбор из гораздо большего количества вариантов, чем ранее рассмотренные элементы выбора. А самое, конечно, важное — это то, что они позволяют динамически формировать варианты выбора из массивов, таблиц, баз данных. Эти разновидности списков работают одинаково; отличие состоит только в том, что комбинированное окно содержит дополнительное текстовое поле, в которое можно ввести (с клавиатуры) элемент для выбора, и комбинированное окно компактнее располагется на форме, поскольку в обычном состоянии оно свернуто до размеров этого дополнительного текстового поля. В связи с последним обстоятельством можно считать, что как раз окно списка, а не текстовое поле, является дополнительным элементом комбинированного окна списка. Если число элементов списка превышает то, которое может разместиться в окне списка, то к окну списка автоматически добавляется линейка прокрутки. В отличие от других элементов управления, которые содержат единственные значения для своих свойств, например, Caption у метки или Text у текстового окна (поля), окна списков и комбинированные окна для некоторых свойств содержат набор (или коллекцию) значений. Поэтому эти элементы имеют встроенные методы для добавления, удаления эначений из коллекции в режиме исполнения. Например, для добавления в коде некоторых трех элементов к коллекции окна списка с именем List1 можно использовать следующие операторы: List1.AddItem "Уха" List1.AddItem "Требуха" List1.AddItem "Чепуха" Ввести элементы в коллекцию окна списка можно и в режиме разработки, хотя это и не очень удобно. Если даже вам заранее известно (по крайней мере, начальное) содержимое окна списка, ввести элементы можно в процедуре Form_Load. Для рассмотрения примера с окнами списка добавим к нашему рабочему приложению еще одну кнопку (например, с именем Окна списков). При щелчке на этой кнопке активизируем новую форму, на которой и расположим окна списков и комбинированные окна. Новую форму создадим по таким же правилам, что и предыдущую. Для создания новой формы на панели Standard щелкните кнопку Add Form и в появившемся окне Add Form дважды щелкните значок Form. Чтобы поместить на новую форму кнопки ОК, Отмена и Справка, можно скопировать их из предыдущей формы (выделить все три кнопки на первой форме, выбрать Copy в меню Edit, перейти к новой форме и выбрать Paste в меню Edit). При этом имена, заголовки и размеры кнопок на новой форме будут такими же, как и на первой. Изменив свойства формы Name и Caption, мы будем иметь приведенные в следующей таблице элементы и их свойства.
Прежде чем разрабатывать далее новую форму, свяжем две формы так, чтобы вторая форма появлялась на экране при щелчке на некоторой кнопке первой формы. Возврат в первую форму закрепим за кнопкой Отмена второй формы. Добавим к форме FrmFirst новую кнопку:
Для этой кнопки добавьте к первой форме обработчик события Click из листинга 3.09.
|