Программирование в среде Visual Basic for Applications (1082430), страница 11
Текст из файла (страница 11)
Таблица ) 1.1. Варианты выбора элементов в списке Способ выбора элементов в списке определяется свойством МпИЯе!ес1, значение которого можно задать в окне свойств или в программе. 11. Панель инструментов «Элементы управления» 83 Например, следующая инструкция позволяет вьщелить в списке несколько последовательно расположенных элементов: Ь1яГВох1.Ми1сьзе1есс=гпни1ГЕЯе1есГЕхсепдед Для добавления новых элементов в список используется метод Ада!!еп). При этом нужно задать параметр, который определяет строку с названием добавляемого в список элемента: Ь1яГВох1.Ас(с(1сеп элемент В следующей процедуре метод АЙЙИепз добавляет в список названия месяцев года: РиЬ11с ЯиЬ Молвив() Ььясвох1.Ас(йтсем "йапиагу" ЬьяГВох1.Ас(йтсем "РеЬгиагу" Ь1ясвох1.Ас(с)тсеи мцесепЬег" Епс) ЯиЬ Для заполнения списка последовательными числами можно использовать процедуру РиЬ11с ЯиЬ МивЬегЬьяс () Рог 1=1 то 20 Ььясвох1.Айс)тгем "Номер элемента:"+вггз(1) Мехи 1 Епс( ЯиЬ Пусть в программе требуется определить выбранные элементы списка.
Если в списке задан выбор только одного элемента, то свойство Тех! элемента управления 1,)я!Вох содержит выделенный элемент, в противном случае свойство Тех! равно пустой строке. Свойство Ь|яйп(!ех содержит номер выделенного пункта в списке. Выбранный в списке элемент можно вывести, например, в окне отладки РеЬпя с помощью инструкции РеЬид. Ргьпс Ььягвох1.техг Если известно, что в списке выделено несколько элементов, то необходимо проверить каждый пункт списка, чтобы определить, выделен он или нет.
Для этого используется свойство ое)есЕе(!, которое по индексу пункта возвращает значение Тгце, если пункт выбран, и значение та!яе — в противном случае. 84 Программирование в среде ) арвиа) Вавк аког А ррйсаионв Свойство ЕЫСопп1 содержит общее количество элементов (пунктов) в списке. При этом первый элемент имеет номер «0»з а последний — (1.ЫСопп1 — 1). Свойство Тла1 возвращает по номеру пункта его текст. Для удаления элемента из списка используется метод ВепюиеНепт, при этом в качестве параметра метода указывается номер удаляемого пункта.
Например, для очистки списка может использоваться следующая процедура: РпЬ11с зпЬ нппЬехь1яс() Рос 1=0 Со (Ь1яянох1.Ь1яяооппя-1) Ьаяявох1.Кетоие тяет 1 нехс 1 Епс) впЬ 11.5. Поле со списком (СогпЬоВох) Если используется поле со списком, то необходимый элемент можно выбрать из списка или ввести вручную. Текущее значение в элементе управления Соп)ЬоВох отображается в поле, а список возможных значений выводится при нажатии кнопки со стрелкой. Элемент управления СоптЬоВох отличается от элемента управления ЬЫВох тем, что в нем можно явно выделить требуемое значение.
Существует два типа полей со списком. С помощью объектов первого типа можно ввести в поле данные, которые затем можно использовать как: ° критерий выбора элементов в списке; например, если список содержит названия месяцев года и вводится слово «Мау», то осуществляется перемещение на этот пункт списка; при этом используются свойства Ма1сЬЕп1гу и Ма1сЬВег)шгей; ° новое значение; например, для задания новой величины масштаба изображения; таким образом, в программе должен быть предусмотрен случай, когда введенного значения нет в списке. Если элемент управления Соп)ЬоВох относится ко второму типу, то для выбора элемента необходимо открыть список,на- !1. Панель инструментов «Элементы управленилл 85 жав кнопку со стрелкой, а затем указать в списке требуемый элемент списка.
Этот элемент появится в поле элемента управления СопзЬоВох. Тип объекта СопзЬоВох можно указать с помощью свойства $1у1е (табл. 11.2). Таблица 11.2. Типы элемента управления СошЬоВох Для заполнения поля со списком применяется метод АйП1епз. Для получения значения, содержащегося в поле элемента управления СощЬоВох, можно использовать свойства Уа1пе и Тех1. Например, два следующих оператора выполняют одно и то же действие — выводят в окне отладки РеЬпя текст, содержащийся в поле элемента управления СогпЬоВох: ПеЬоО.Ргзпь СооЬонох1.оа1ое ПеЬоО.Рг1пе СошЪонох1.техс При присвоении значения свойству Тех1 автоматически выполняются следующие действия: ° заданный текст выводится в поле элемента управления СощЬоВох (если заданный текст не является элементом списка, то выдается сообщение об ошибке); ° свойству 1,в11пдех элемента СопзЬоВох присваивается индекс элемента списка, соответствующего заданному значению.
11.6. Флажок (СЬеснВох) Элемент управления СЬескВох создает ячейку («маленький квадрат»), которая может быть помечена пользователем как имеющая значение Тгпе или Га!зе. С флажком можно связать некоторый заголовок. Если этот квадрат пуст, то при щелчке по нему в нем появляется галочка, и, наоборот, если квадрат был помечен галочкой, то при щелчке по нему галочка исчезает. 86 Программирование в среде ~Ъиа1 ВавГс1ос Аррйсаионв Если флажок установлен, то свойство Уа!пе элемента управ- ления ОзескВох имеет значение Тгпе. Состояние флажка используется в процедурах обработки со- бытия флажка Ыажатие кнопки или при принятии решения о выполнении некоторого действия.
Элемент управления СЬескВох может иметь три состояния: ° Ложь (г а1ве), ° Истина (Тгпе), ° не Ложь и не Истина (ХпП). По умолчанию флажки имеют имена: СпескВох1, СЬескВох2 и т. д. С помощью свойства Хапзе можно присвоить флажку новое имя. Свойство СарВоп позволяет установить текст, который будет появляться рядом с элементом управления ОзескВох.
Если заголовок флажка очень длинный, то можно разместить его в нескольких строках, присвоив свойству %огд%гар значение Тгпе. Описать работу элемента управления С)зескВох можно с помощью следующих инструкций ([Ц): РцЫтс ЯцЬ СЬескнох1 С11сК О тй СЬесквсх1.уа1це=ттце ТЬеп инструкции 1 е1ее ' инструкции 2 епд 11 впд ЯцЬ 11.7. Переключатель (Ор11опВп11оп) Элемент управления Ор11опВп11оп предназначен для выбора одного варианта из нескольких. В любое время в группе может быть выбран только один переключатель. Отмена выбора одного элемента управления ОрйопВп11оп при выделении другого осуществляется автоматически. По умолчанию переключатели имеют имена ОрйопВп11оп1, ОрйопВппоп2 и т.
д. Группировка переключателей может быть выполнена двумя способами: 87 11. Панель ннструментов в Элементы управления» ° С помощью элемента управления Рамка (г ганзе). Все объекты управления ОрйопВпйоп, расположенные в одной рамке, рассматриваются как члены одной группы. Для каждого набора переключателей должна использоваться своя рамка. ° С помощью свойства для группировки объектов — СгопрХапзе.
При выборе элемента управления ОрВопВп11оп отменяется выбор всех переключателей, значение свойства СгопрХап)е которых совпадает со значением того же свойства выделенного элемента управления ОрйопВп11оп. При использовании свойства СгопрЯапте отпадает необходимость в создании элемента управления Ргапте. Свойство СгопрХаше может быть установлено как в окне свойств, так и в программе.
Свойство Ча)пе выбранного переключателя имеет значение Тгпе. Процедура, описывающая работу трех переключателей, может иметь вид ([Ц): ВцЫТс ВцЬ ОпескордьопВцетоп() тд ОртьопВцееоп1.ца1це ТЬеп инструкции 1 Е1зетй Орт1опвцееоп2.уа1це Тпеп инструкции 2 Е1зетт ОрдьопВцееопз.ца1це Тпеп инструкции 3 Епн 11 Епс) ВцЬ 11.8. Рамка (и ганзе) Элемент управления Египте предназначен для группирования элементов в форме.
По умолчанию рамки имеют имена Ргапзе1, Ргапте2 н т. д. Установить новое значение имени рамки можно с помощью свойства аканте. Свойство Сар1юп определяет текст, который появляется вверху рамки. Например: Гтаие1.сарттоп="Варианты заданий" Программирование в среде )асана! Вае(сГос Арр(Гса(Гоав 11.9. Счетчик (йр!пВп11оп) Одновременно с элементом управления Яр!пВп11оп (Счетчик) необходимо создать элемент управления Тех1Вох (Поле), значение которого будет меняться с помощью этого счетчика. Можно изменять размеры счетчика Яр!пВп11оп в форме, растянув его границы.
Также можно изменить направление стрелок на элементе управления Бр!пВп11оп (с вертикального на горизонтальное), изменив пропорции счетчика. При нажатии кнопок счетчика возникают события: Рс1чаое БиЬ ЯрьпВиоооп1 Ярьпор() Епс) БиЬ и Рстчаое БиЬ ЯртпВиопоп1 Брьпроип() Епс) БиЬ События Бр!п1)р (Вверх), Яр!пПоип (Вниз) предназначены для изменения значения в связанном со счетчиком элементе управления. Свойство 1)а)пе счетчика автоматически изменяется при нажатии на кнопку. Процедуры, в которых при нажатии кнопки счетчика присваивается значение связанному со счетчиком объекту (полю Тех1Вох) могут быть записаны как Рсьчаое БиЬ Брьпвиоооп1 Брьпор() Теховох1.Ча1ие= БрьпВиоооп1,Ча1ие Епс) БиЬ Рсьчаое БиЬ Бр1пвисооп1 Бр1пооип О техсВох1.ча1ие= БрьпВиссоп1.ча1ие Епс) БиЬ Элемент управления Яр!пВп11оп имеет три свойства, которые используются при изменении его значения: ° Мах — определяет максимальное значение элемента управления эр!пВп11оп; 11.
Панель инструментов нЭлементы управленинл 89 ° М1п — определяет минимальное значение элемента управления Яр1пВп11оп; ° Ча1пе — определяет текущее значение элемента управления Яр1пВп11оп, изменяется при нажатии кнопки счетчика. Значения этих свойств могут быть заданы как в окне свойств, так и в коде программы. 11.10. Выключатель (Торд1еВп11оп) Элемент управления То881еВп11оп создает кнопку с двумя состояниями: Включено и Выключено. Внешне выключатель напоминает кнопку, однако щелчок по выключателю меняет его состояние, и этим он похож на флажок. Свойство Ча!пе элемента Тояя1еВп11оп может принимать одно из трех значений: Тгпе, га1яе, Хпй. Работа переключателя может быть описана с помощью следующих процедур: РпЬ11с ЯпЬ Тодд1евпоооп1 С11с)с() ХГ Тодд1евпоооп1.Уа1пе СЬеп операторы 1 е1ае операторы 2 Епс) 11 Епс) ЯпЬ РпЬ11с ЯпЬ Му ХосК() Хоп)с рго)есс(Тодд1еВпссоп1.уа1пе) Епс) ЯпЬ Также можно поместить в форму полосу прокрутки ВсгоПВаг н набор вкладок ТаЬЯ1г!р.
12. Создание автоматизированного оглавления рабочей книги В данном разделе приведены примеры создания автоматизированного оглавления рабочей книги с помощью объектов панели инструментов Элементы управления 1[2)). Создадим рабочую книгу с пятью рабочими листами с именами Оглавление, Май, Июнь, Июль и Вспомогательный. Последовательно будем добавлять на рабочие листы рабочей книги новые элементы управления и записывать соответствующие им процедуры перелистывания листов рабочей книги. 12.1. Процедуры перелистывания рабочих листов с помощью кнопок С помощью кнопки Кнопка создайте на ячейках С2, РЗ и Е4 рабочего листа Оглавление три кнопки — Май, Июнь и Июль 1рис. 12.1). Рассмотрим подробнее создание кнопки Май.