14.
МАССИВЫ
ЭЛЕМЕНТОВ
УПРАВЛЕНИЯ
В Visual Basic можно создавать массивы любого типа, в том числе и элементов управления. Именно эта отличительная особенность языка придает ему особую гибкость и популярность. Массив элементов управления можно применять для создания общей процедуры обработки события, которая будет использоваться всеми его элементами. Помимо этого возникает возможность динамически добавлять в форму или удалять из нее новые объекты.
Все встроенные элементы управления могут быть организованы в массивы, т.к. у них имеется свойство «Index», используемое для идентификации нужного элемента.
Многие подобные массивы создаются во время разработки. Для этого необходимо у нескольких элементов управления указать одинаковое имя в свойстве «Name». При этом Visual Basic предложит создать массив элементов управления. При утвердительном ответе массив будет создан, а при отрицательном восстановит прежнее имя объекта. Создать массив из одного элемента управления можно также, указав в его свойстве «Index» значение нуль. Все эти элементы будут меть одинаковое имя и различаться только индексами: для первого элемента индекс будет равным 0, для второго – 1 и т.д.
Примечание |
Нужно помнить, что к объединению в массив допускаются только одинаковые элементы управления. В противном случае Visual Basic выдаст ошибку о недопустимом имени объекта. |
Процедура обработки события будет общей для всех элементов массива и имеет следующий синтаксис:
Private Sub
NameControl_<Событие>(Index As Integer)
· Private – зарезервированное слово, определяющее видимость процедуры в структуре приложения.
· Sub – кодовое слово, определяющее вид программного блока.
· NameControl – имя объекта, генерирующего событие (элемент управления или форма).
· <Событие> – название конкретного события.
· Index – переменная, в которую будет помещено значение индекса элемента управления, вызвавшего событие.
При необходимости после переменной «Index» записываются необходимые параметры процедуры.
Для создания нового элемента управления необходимо воспользоваться оператором «Load» согласно следующему синтаксису:
Load
NameArrayControl(Index)
·
Load
– имя
оператора;
· NameArrayControl – имя массива элементов управления;
· Index – номер создаваемого элемента массива.
Примечание |
Новый элемент управления будет обязательно невидимым, а остальные свойства будут копироваться из элемента с индексом нуль. Поэтому после создания нового элемента его необходимо сконфигурировать должным образом. |
Для удаления элемента управления применяют оператор «Unload» аналогичного синтаксиса:
Unload
NameArrayControl(Index)
·
Unload
– имя
оператора;
· NameArrayControl – имя массива элементов управления;
· Index – номер создаваемого элемента массива.
Важно помнить, что свойство «Index» должно изменяться равномерно: строго от нуля без пропусков. Например, если имеется массив из трех элементов (от 0 до 2), то следующий будет обязательно с индексом 3. Удалить элемент управления можно также только с максимальным индексом. Сразу создать или удалить несколько элементов массива нельзя.
Контрольные
вопросы для
самопроверки