Автоматизация Microsoft Word. Открытие документа

   
На этом шаге мы рассмотрим открытие документов различных типов.

   
Ранее созданный документ можно открыть с помощью метода Open. При вызове метода можно указать и
несколько аргументов, но главный из них - ссылка на путь и имя файла. Откроем ранее созданный документ.
Дополним пример из шага 44 кнопкой открытия документа.


Рис.1. Внешний вид измененного приложения

   
Обработчик нажатия на эту кнопку выглядит так:

procedure TForm1.Button4Click(Sender: TObject);
//Открытие документа
begin
  if OpenDialog1.Execute then
      W.Documents.Open(OpenDialog1.FileName);
end;

Текст этого приложения можно взять здесь (5,9 Кб).

   
Результат выполнения данного фрагмента программы представлен на рисунке 1.


Рис.2. Результат работы фрагмента программы

   
Метод Open коллекции Documents можно вызывать с несколькими аргументами. Обратимся к справочной
системе Visual Basic и рассмотрим синтаксис и аргументы этого метода (таблица 1).

  Documents.Open(FileName, ConfirmConversions, Readonly, AddToRecentFiles, 
         PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument, 
         WritePasswordTemplate, Format)

Таблица 1. Аргументы метода Open, их типы и функциональное значение

АргументТипЗначение
FileName StringПуть и имя файла
ConfirmConversions BooleanFalse - не открывать диалоговое окно Преобразование файла при открытии файла, формат которого отличается от DOC
Readonly BooleanTrue - открыть документ в режиме "только для чтения"
AddToRecentFiles BooleanTrue - добавляет имя файла в список файлов меню File
PasswordDocument StringПароль для открытия документа
PasswordTemplate StringПароль для открытия шаблона
Revert BooleanTrue - возврат к сохраненному документу, если этот документ открывается повторно
WritePasswordDocument StringПароль для сохранения измененного документа в файле
WritePasswordTemplate StringПароль для сохранения изменений в шаблоне
Format ЧислоФормат открываемого документа

   
При вызове метода Open можно игнорировать некоторые аргументы и не указывать их, например, вызов
W.Documents.Open(FileName); просто открывает файл без каких-либо дополнительных возможностей. Если немного
изменить синтаксис вызова - W.Documents.Open(FileName:= 'с:\Документ1.dос');, то конечный результат будет
таким же, как и в первом случае. Когда нам потребуется открыть документ в режиме "только для чтения", то
используем следующий синтаксис:

    W.Documents.Open (FileNaine:='с: \Документ1.doc', Readonly:=True);

   
Разместим в нашей форме кнопку и напишем программный текст, позволяющий открывать документы в режиме "только для чтения".


Рис.3. Внешний вид измененного приложения

procedure TForm1.Button5Click(Sender: TObject);
//Открытие документа в режиме "только чтение"
begin
  if OpenDialog1.Execute then
      W.Documents.Open(OpenDialog1.FileName, ReadOnly:=true);
end;

Текст этого приложения можно взять здесь (6,1 Кб).

   
Если для открытия документа используется не два, а три аргумента, независимо от их последовательности, то синтаксис изменится на одну запись.
Например: откроем документ в режиме "только для чтения", который защишен паролем.

  W.Documents.Open (FileName:='с:\Документ1.doc', Readonly:=True, 
         PasswordDocument:='123');

   
Здесь строка '123' - значение пароля.

   
Обратим внимание на последний аргумент метода Open - Format. Этот аргумент может принимать целые числовые значения и определяет
формат открываемого документа (таблица 2).

Таблица 2. Значения аргумента Format и форматы открываемых документов

КонстантаЗначениеФормат открываемого документа
WdOpenFormatAuto 0Выбирается автоматически
WdOpenFormatDocument 1Документ Word (файл с расширением DOC)
WdOpenFormatRTF 3Документ в формате RTF (файл с расширением RTF)
WdOpenFormatTemplate 2Шаблон Word (файл с расширением DOT)
WdOpenFormatText 4Текст (файл с расширением ТХТ)
WdOpenFormatUnicodeText 5Кодированный текст (файл с расширением ТХТ) - текст в формате UNICODE

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

procedure TForm1.Button6Click(Sender: TObject);
//Открытие TXT-документа
begin
  if OpenDialog1.Execute then
      W.Documents.Open(OpenDialog1.FileName, Format:=4 {wdOpenFormatText});
end;

Текст этого приложения можно взять здесь (6,2 Кб).

   
Результат выполнения этой процедуры представлен на рисунке 4.


Рис.4. Результат работы приложения

   
На следующем шаге мы рассмотрим работу со списком открытых документов.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий