Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Тема 2. 10 интеграция с внешними приложениями

Пример создания формы

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

1. После добавления заготовки формы (меню "Вставка/UserForm"), ее имя (свойство Name) изменено на frmAddStudent.

2. На форму были добавлены следующие элементы управления: TextBox, Label, OptionButton, CommandButton. Элементам TextBox, предназначенным для ввода данных пользователем, заданы имена (свойство Name) txtLName, txtFName, txtMName, txtContacts, txtBDay. Элементам Label заданы надписи (свойство Caption) "Фамилия:", "Имя:", "Отчество" и т.д. Элементы OptionButton, используемые для указания пола студента, получили имена optMale и optFemale. Эти элементы сгрупппированы с помощью рамки (Frame). Для подтверждения ввода или отмены действий на форму добавлены 2 кнопки (CommandButton). Первой из них задано имя (свойство Name) btnAdd и надпись (свойство Caption) "Принять", второй - btnCancel и "Отмена" соответственно.

3. Далее, размещенные элементы были спозиционированы путем изменения размеров и положения через указание значений свойств Left, Top, Width и Height.

4. В завершении были созданы (двойной клик на соответствующем элементе) заготовки обработчиков событий для кнопки btnAdd и btnCancel. Заготовка обработчика события инициализации формы была создана путем выбора этого события из списка доступных методов ("Редактор формы/Declarations/initialize")

5. В проект был добавлен дополнительный модуль с именем General (листинг 30), где описаны общие данные проекта, в частности переменная stud (CStudent) и макрос sample33, из которого вызывается форма frmAddStudent.

6. В созданные обработчики событий добавлен функциональный код, приведенный и прокомментированный в листинге 31.

Листинг 30. Модуль General

Option Explicit ' явное описание переменных Public stud As New CStudent ' экземпляр класса CStudent Public Const AppName = "БД Деканат" Sub sample32() frmAddStudent.Show ' Показать форму End Sub

Листинг 31. Модуль формы frmAddStudent

' Событие происходит в момент первого вызова формы Private Sub UserForm_Initialize() Caption = AppName & ": Добавление студента" ' Заголовок формы ' Задаем значение по умолчанию в поле ввода даты рождения txtBDay = Format(Date, "DD.MM.YYYY") End Sub ' Событие происходит по клику на кнопке "Принять" (btnAdd) Private Sub btnAdd_Click() With stud ' Записываем значения полей ввода в свойства объекта stud.LastName = txtLName.Value.FirstName = txtFName.Value.MiddleName = txtMName.Value.BirthDay = CDate(txtBDay.Value).Contacts = txtContacts.Value ' Проверяем значения элементов OptionButton ' Если установлен optMale, то в свойство stud.Gender пишем "муж",... If optMale.Value Then.Gender = "муж" ElseIf optFemale.Value Then '... иначе - "жен".Gender = "жен" End If Debug.Print.FullInfo ' отображаем информацию о студенте в отладчике End With ' Уведомляем пользователя о добавлении записи и ждем дальнейших указаний ' Если пользователь нажмет "Отмена", то скрываем форму (метод Hide) msg = "Запись добавлена." & vbCrLf & "Продолжить?" If MsgBox(Prompt:=msg, Title:=AppName, Buttons:=vbOKCancel + vbInformation) = vbCancel Then Hide End Sub ' Событие происходит при выборе кнопки "Отмена" (btnCancel) Private Sub btnCancel_Click() Hide ' скрываем форму End Sub

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

Автоматизация, ранее известная как OLE-автоматизация, - это технология, позволяющая включать функциональные средства любого Windows-приложения в другое приложение посредством программного кода. Другими словами, автоматизация - это процесс управления одним приложением посредством другого. Использование другого приложения как источника новых средств и инструментов значительно расширяет возможности вызывающего приложения, причем это даже не всегда требует написания соответствующих процедур VBA. Можно, например, организовать показ слайдов с музыкальным сопровождением (используя средства PowerPoint), которые будут отображать данные рабочей книги Excel.

Для того чтобы использовать автоматизацию, необходимо располагать инсталлированным приложением, средствами которого вы хотите воспользоваться, и это приложения должно поддерживать технологию автоматизации. Большинство приложений, работающих под Windows, полностью поддерживают автоматизацию. В этом случае говорят, что они открыты, т.е. доступны все коллекции их объектов, свойств, методов и событий. Возможность использовать открытые объекты - это то же самое, что и возможность использовать средства приложения.

<== предыдущая лекция | следующая лекция ==>
Методы и события элементов управления | Просмотр библиотеки объектов
Поделиться с друзьями:


Дата добавления: 2013-12-13; Просмотров: 558; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.01 сек.