Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лаб. раб. 4.doc
Скачиваний:
15
Добавлен:
06.05.2017
Размер:
92.67 Кб
Скачать

Лабораторная работа №4

Автоматизация Microsoft Word: работа с документом

Цель: получить навыки разработки контроллеров автоматизации Microsoft Word.

Краткие теоретические сведения

1 Объектная модель Microsoft Word

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

На рисунке 1 приведена иерархия объектов Microsoft Word.

Рис. 1 – Объектная модель Microsoft Word

2 Создание и открытие документов Microsoft Word

Создать новый документ Word можно, используя метод Add коллекции Documents объекта Application:

App.Documents.Add;

Для открытия уже существующего документа следует воспользоваться методом Open коллекции Documents:

App.Documents.Open('С:\MyWordFi1e.doc');

Cвойство ActiveDocument объекта Word.Application указывает на текущий активный документ среди одного или нескольких открытых. Помимо этого, к документу можно обращаться по его порядковому номеру с помощью метода Item. Например, ко второму открытому документу можно обратиться так:

App.Documents.Item(2)

Нумерация членов коллекций в Microsoft Office начинается с единицы.

Сделать документ активным можно с помощью метода Activate:

App.Documents.Item(1).Activate;

3 Сохранение, печать и закрытие документов Microsoft Word

Закрытие документа может быть осуществлено с помощью метода Close одним из следующих способов:

App.Documents.Item(2).Close;

App.ActiveDocument.Close;

Метод Close имеет несколько необязательных (в случае позднего связывания) параметров, влияющих на правила сохранения документа. Первый из них определяет необходимость сохранения внесенных в документ изменений и принимает три возможных значения (соответствующие константы рекомендуется описать в приложении):

const

wdDoNotSaveChanges = $00000000; // не сохранять изменения

wdSaveChanges = SFFFFFFFF; // сохранять изменения

wdPromptToSaveChanges = $FFFFFFFE; // вывести диалоговое окно

// с соответствующим запросом

Второй параметр определяет формат сохраняемого документа:

const

wdWordDocument = $00000000; // сохранить в формате Word

wdOriginalDocumentFormat = $00000001; // сохранить в исходном

// формате документа

wdPromptUser = $00000002; // вывести диалоговое окно Save As

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

Таким образом, при использовании перечисленных выше параметров закрыть документ можно, например, так:

Арр.ActiveDocument.Close(wdSaveChanges.wdPromptUser);

Просто сохранить документ, не закрывая его, можно с помощью метода Save:

Арр.ActiveDocument.Save;

Этот метод также имеет несколько необязательных (в случае позднего связывания) параметров, первый из которых равен True, если документ сохраняется автоматически, и False, если нужно выводить диалоговое окно для получения подтверждения пользователя о сохранении изменений (если таковые были сделаны). Второй параметр влияет на формат сохраняемого документа, и список его возможных значений совпадает со списком значений второго параметра метода Close.

Вывод документа на устройство печати можно осуществить с помощью метода Printout объекта Document, например:

Арр.ActiveDocument.PrintOut;

Соседние файлы в предмете Кросс-платформенное программирование