Опубликован: 19.11.2012 | Уровень: для всех | Доступ: платный | ВУЗ: Национальный исследовательский университет "Высшая Школа Экономики"
Лекция 18:

Разработка приложений

< Лекция 17 || Лекция 18 || Лекция 19 >
Аннотация: Редактор Visual Basic предоставляет эффективные средства для создания диалоговых окон (объекты Userform – пользовательские формы). Формы, элементы форм, событийные процедуры можно рассматривать как "кубики", из которых разработчик строит удобный для пользователя интерфейс.

В формы можно добавить элементы управления. Чтобы определить, как должно реагировать диалоговое окно на действия пользователя, разработчик должен создать процедуры обработки событий, которые выполняются при каждом возникновении соответствующего события, например, выбор элемента управления, изменение значения элемента, открытие или закрытие формы и т. д. Элементы управления могут размещаться непосредственно в документе приложения.

Композиция диалогового окна легко изменяема, т. к. элементы формы легко перемещаются, добавляются или удаляются. Программа работы с формой, по сути, представляет собой совокупность событийных процедур: любой элемент управления, расположенный на форме, выполняет одну или несколько функций, каждая из которых реализуется событийной процедурой.

Формы, созданные для одного документа или приложения, легко переносятся в другой документ или приложение. Достаточно воспользоваться средствами экспорта и импорта файлов. При экспорте формы создается файл с расширением .frm. При экспорте модуля создается файл с расширением .bas. При экспорте/импорте формы автоматически экспортируется и импортируется код, связанный с формой.

Если код обработки событий формы включает команды обработки специфичных объектов приложения, то в другом приложении импортированный код вряд ли будет корректно работать.

Элементы управления

Элементы управления являются графическими объектами. Для документов офисных приложений они доступны в группе Элементы управления вкладки Разработчик и незначительно различаются для разных приложений. Для редактора Visual Basic элементы управления находятся на панели инструментов ToolBox. На рис.18.1 показаны элементы управления документов MS PowerPoint, MS Word, MS Excel и Visual Basic. Элементы управления в редакторе Visual Basic для MS Access недоступны. Они вызываются при создании и редактировании форм и отчетов базы данных (см. "Системы управления базами данных" ).

Элементы управления приложений и VBA

Рис. 18.1. Элементы управления приложений и VBA

На панелях элементов управления расположены наиболее часто используемые элементы управления. Отсутствующие элементы управления офисных документов можно добавлять после нажатия на кнопку VB. Панель элементов управления в Visual Basic можно настроить, используя команду Additional Controls меню Tools при высвеченной на экране настраиваемой панели элементов.

Чтобы добавить любой элемент управления в офисный документ или пользовательскую форму, необходимо выбрать его и разместить в форме или в документе щелчком мыши или перемещением курсора мыши с нажатой левой кнопкой. Двойной щелчок на размещенный элемент управления автоматически открывает процедурный лист, связанный с объектом приложения, на котором размещен элемент управления. В форме для просмотра кода можно нажать клавишу F7. После выбора из списка событий объекта названия события на листе кода появляется новая процедура, в имя которой включены имя конкретного элемента управления или формы и название события. Например, если элемент управления – первая добавленная командная кнопка, то имя процедуры CommandButton1_Click. Подробно о возможностях разработки процедур см. "Основы программирования" . "Основы программирования".

После вставки формы и элементов управления можно изменить их размеры и местоположение, используя меню Format или изменяя свойства этих элементов. Установленные свойства определяют вид элемента управления и некоторые особенности обработки элемента во время выполнения диалога.

Установка свойств формы и ее элементов может производиться на этапе разработки в окне свойств или программным путем в событийных процедурах формы. Часто предусматривается установка начальных значений свойств в процедуре инициализации формы. Можно менять не только размеры, но и цвет, последовательность перехода между элементами управления, создавать строки подсказок при перемещении на элемент, задавать буквенную клавишу, нажатие на которую ускоряет процесс перехода к нужному элементу управления, и т. д. В режиме выполнения формы значения свойств элементов управления могут быть изменены или протестированы. Например, элемент управления может быть отключен или очищен в зависимости от контекста.

Методы формы и ее элементов управления могут вызываться в событийных процедурах. Например, можно установить фокус на элемент управления или закрыть активную форму. Перечень свойств, методов и событий, ассоциированных с элементами управления, можно просмотреть через Object Browser.

Вопросы для самопроверки

  1. Как расшифровывается VBA?
  2. Как записать макрос с помощью макрорекодера?
  3. Можно ли привязать макрос к графическому объекту?
  4. Как можно перейти в среду редактора VBA?
  5. Какие папки входят в проект Microsoft Excel?
  6. В чем заключается отличие процедуры от функции и событийной процедуры от процедуры общего типа?
  7. Какие возможности получения справочной информации реализованы в VBA?
  8. Что такое модель объектов?
  9. В чем заключаются особенности коллекции объектов?
  10. Как использовать Object Browser для поиска свойств и методов объектов?
  11. Какие типы переменных доступны в редакторе VBА?
  12. Какие используются операторы объявления переменных?
  13. Что такое область видимости и время жизни переменной?
  14. Каковы особенности объявления и применения динамических массивов?
  15. Какие типы функций используются в VBA?
  16. Как вызвать функцию рабочего листа?
  17. Какие операторы цикла используются в VBA?
  18. В чем отличие цикла с постусловием от цикла с предусловием?
  19. В чем особенность оператора цикла объектного типа?
  20. Какие операторы используются для принудительного выхода из цикла?
  21. Можно ли задать несколько условий: а) в одном условном операторе; б) в одном операторе выбора?
  22. Какие окна редактора VBА используются во время отладки программ?
  23. Как во время прерывания программы определить значения переменных?
< Лекция 17 || Лекция 18 || Лекция 19 >
Аннна Миллер
Аннна Миллер
Екатерина Дмитриева
Екатерина Дмитриева
Марина Сафонова
Марина Сафонова
Россия
Лидия Белова
Лидия Белова
Россия