Опубликован: 04.07.2006 | Уровень: для всех | Доступ: свободно
Лекция 6:

Обмен данными

Программирование объектов; продолжение

Программирование объектов обеспечивает приложениям возможность предоставлять свои объекты в распоряжение средств разработки и других приложений. 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.

Последовательность действий:

  • создать ссылку на библиотеку объектов: Проект \to Ссылки \to 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
Работа с объектом - экземпляр приложения Word

Рис. 6.8. Работа с объектом - экземпляр приложения Word

Практическая работа 44. Использование объектов Excel и Access: результаты SQL-запроса передать средствами языка программирования для дальнейшей математической обработки в Excel

  1. Создать элементарный фрагмент базы данных, см. табл. 6.2 Подключить 3 библиотеки (для обеспечения работы с DAO, Access и Excel): Microsoft Excel 10.0 Object Library, Microsoft Access 10.0 Object Library, Microsoft DAO 3,51Object Library
    Таблица 6.2. Анализ прибыли, фрагмент
    Kode Lad Jan Febr SumGes Proz
    1 Lad1 256 381 0 0,00%
    2 Lad2 786 982 0 0,00%
    3 Lad3 528 436 0 0,00%
    4 Sum 0 0 0
  2. создать на форме (рис. 6.9) поле списка (Name = lst) свойству Microsoft присвоить значение, обеспечивающее возможность одновременной маркировки нескольких строк, 3 командных кнопки - cmd1 (Caption = Access), cmd2, Caption = Excel), cmdEnd, CommonDialog (Name = cdlg), cм. 6.2, (для обеспечения диалога с пользователем при передаче данных Access \to Exсel), см. код процедуры Private Sub cmd2_Click(). Элемент управления CommonDialog не виден на рис. 6.9, т.к. там изображена форма после старта проекта,
  3. ввести код, данный ниже, стартовать проект, сделать щелчок на кнопке Access - имена полей таблицы базы данных выводятся в поле списка lst, рис. 6.9,
  4. в поле lst (на рис. 6.9 - Fields) маркировать поля, которые нужно передать в приложение Excel для дальнейшей математической обработки; далее сделать щелчок на кнопке Excel,
  5. подтвердить желание сохранить файл: сделать щелчок на кнопке ОК в окне MsgBox, ввести имя файла - выводится сообщение о том, что данные Access сохранены на листе Exсel,
  6. открыть этот файл с данными, просмотреть таблицу, рис. 6.9, сделать щелчок на кнопке End проекта. Пояснения даны под комментариями к коду.
Константин Новков
Константин Новков

Лекция 3: 2

Для создания возможности использования объектов файловой системы нужно подключить библиотеку DLL, содержащую эти объекты: меню Разработать > Ccылки > Microsoft Scriptlet Component (сделать щелчок на соответствующем элементе управления CheckBox).

Не могу найти меню Разработать (Develop)>Links и т.д.

антонина квасова
антонина квасова