Лекция 3: 2 Для создания возможности использования объектов файловой системы нужно подключить библиотеку DLL, содержащую эти объекты: меню Разработать > Ccылки > Microsoft Scriptlet Component (сделать щелчок на соответствующем элементе управления CheckBox). Не могу найти меню Разработать (Develop)>Links и т.д. |
Обмен данными
Программирование объектов; продолжение
Программирование объектов обеспечивает приложениям возможность предоставлять свои объекты в распоряжение средств разработки и других приложений. Visul Basic позволяет проводить работу с объектами с помощью их (объектов) методов или установки/чтения их свойств, например:
seinObjekt.Bold = True ' форматировать текст seinObjekt.SaveAs = "A:\txt.doc" ' сохранить текст
при этом программируемый объект seinObjekt был заранее создан.
Visual Basic позволяет создавать новые объекты и работать с имеющимися в приложениях Microsoft. Функции CreateObject/GetObject используются для создания нового объекта/получения существующего из другого приложения. Ключевое слово New используется для создания объекта некоторого класса, примеры:
Set ExcelWorksheet = GetObject("SHEET5.XLS") - стартовать Excel и открыть лист уже существующий, Dim x As New Field - описание нового объекта.
Приложения Microsoft предоставляют в распоряжение сотни объектов. Object Browser позволяет просмотреть их свойства, методы и события; можно получить также их краткое описание, выполнить поиск. При использовании в проекте объектов из другого приложения нужно сделать ссылку на библиотеку типов этого приложения.
Практическая работа 43. Работа с объектом - экземпляр приложения Word: создание файла, запись текста и т.д.
Задание: создать программно экземпляр приложения Word; создать файл, ввести тест, сохранить файл. После создания объектной переменной этого типа с использованием свойств и методов объекта пользователь получает доступ к многим функциям Word.
Последовательность действий:
- создать ссылку на библиотеку объектов: Проект Ссылки Microsoft Word Object Library,
- cоздать на форме командную кнопку (Name = cmd1) и текстовое поле (Name = txt1),
- ввести код, данный ниже, пояснения даны под комментариями к коду, стартовать проект,
- ввести в текстовое поле текст, сделать щелчок на командной кнопке,
- для проверки работы проекта стартовать приложение Word, рис. 6.8
Private Sub cmd1_Click() Dim str As String ' описание переменной для работы с текстом ' с использованием ключевого слова New создать объектную ' переменную (ссылка проводится на объект Word.Application - ' экземпляр приложения Word) Dim edi As New Word.Application ' присвоить переменной значение: текст, ' вводимый в текстовое ' поле str = txt1.Text ' создать новый документ Word (Documents - дочерний ' объект по отношению к объекту Word.Application) edi.Documents.Add ' вставить в документ Word (метод Type) текст из ' текстового поля edi.Selection.Type Text (str) ' cохранить документ edi.ActiveDocument.SaveAs FileName:="A:\nnn.doc" ' закрыть документ edi.ActiveDocument.Close edi.Application.Quit ' закрыть приложение Set edi = Nothing ' очистить объектную переменную End Sub
Практическая работа 44. Использование объектов Excel и Access: результаты SQL-запроса передать средствами языка программирования для дальнейшей математической обработки в Excel
- Создать элементарный фрагмент базы данных, см. табл. 6.2 Подключить 3 библиотеки (для обеспечения работы с DAO, Access и Excel): Microsoft Excel 10.0 Object Library, Microsoft Access 10.0 Object Library, Microsoft DAO 3,51Object Library
- создать на форме (рис. 6.9) поле списка (Name = lst) свойству Microsoft присвоить значение, обеспечивающее возможность одновременной маркировки нескольких строк, 3 командных кнопки - cmd1 (Caption = Access), cmd2, Caption = Excel), cmdEnd, CommonDialog (Name = cdlg), cм. 6.2, (для обеспечения диалога с пользователем при передаче данных Access Exсel), см. код процедуры Private Sub cmd2_Click(). Элемент управления CommonDialog не виден на рис. 6.9, т.к. там изображена форма после старта проекта,
- ввести код, данный ниже, стартовать проект, сделать щелчок на кнопке Access - имена полей таблицы базы данных выводятся в поле списка lst, рис. 6.9,
- в поле lst (на рис. 6.9 - Fields) маркировать поля, которые нужно передать в приложение Excel для дальнейшей математической обработки; далее сделать щелчок на кнопке Excel,
- подтвердить желание сохранить файл: сделать щелчок на кнопке ОК в окне MsgBox, ввести имя файла - выводится сообщение о том, что данные Access сохранены на листе Exсel,
- открыть этот файл с данными, просмотреть таблицу, рис. 6.9, сделать щелчок на кнопке End проекта. Пояснения даны под комментариями к коду.