![](images/delphi/004.gif)
Ранее созданный документ можно открыть с помощью метода Open. При
вызове метода можно указать и несколько аргументов, но главный из них —
ссылка на путь и имя файла. Откроем ранее созданный документ. Фрагмент
текста программы выглядит так:
Открытие документа
procedure TForml.Button4Click(Sender: TObject);
var dir_:string;
begin
GetDir(0,dirJ;
if not 0penDialog2.Execute then begin chdir(dir_); exit; end;
chdir (dirj;
W.Documents.Open(0penDialog2.FileName);
end;
Результат выполнения данного фрагмента программы представлен на
рис. 5.4.
Метод Open коллекции Documents можно вызывать с несколькими аргумен-
тами. Обратимся к справочной системе Visual Basic и рассмотрим синтаксис
и аргументы этого метода (табл. 5.1).
![](images/delphi/034.JPG)
Рис. 5.4. Документ, открытый методом Open
Синтаксис метода Open
Documents.Open(FileName, ConfirmConversions, Readonly, AddToRecentFiles,
PasswordDocument, PasswordTemplate, Revert, WritePasswordDocument,
WritePasswordTemplate, Format)
Таблица 5.1. Аргументы метода Open, их типы и функциональное значение
![](images/delphi/035.JPG)
![](images/delphi/036.JPG)
При вызове метода Open можно игнорировать некоторые аргументы и
не указывать их, например, вызов W.Documents.Open(FileName); просто
открывает файл без каких-либо дополнительных возможностей. Если
немного изменить синтаксис вызова — W.Documents.Open(FileName:=
'с:\Документ1.<Зос');, то конечный результат будет таким же, как и в первом
случае. Когда нам потребуется открыть документ в режиме "только для чте-
ния", то используем следующий синтаксис:
W.Documents.Open(FileName:='с:\Документ1.doc', Readonly:=True);
Разместим в нашей форме кнопку и напишем программный текст, позво-
ляющий открывать документы в режиме "только для чтения".
Открытие документа только для чтения
procedure TForml.Button5Click(Sender: TObject);
var dir_:string;
begin
GetDir(0,dir_) ;
if not OpenDialog2.Execute then begin chdir(dir_); exit; end;
chdir(dir_);
W.Documents.Open(OpenDialog2.FileName,Readonly:=true);
end;
Если для открытия документа используется не два, а три аргумента, незави-
симо от их последовательности, то синтаксис изменится на одну запись.
Например: откроем документ в режиме "только для чтения", который за-
щищен паролем.
W. Documents .Open (FileName:=' с: \Документ1.с1ос',
Readonly:=True, PasswordDocument:=' 123' );
Здесь строка '123' — значение пароля.
Обратим внимание на последний аргумент метода ADD — Format. Этот ар-
гумент может принимать целые числовые значения и определяет формат
открываемого документа (табл. 5.2).
Таблица 5.2. Значения аргумента Format и форматы открываемых документов
![](images/delphi/037.JPG)
Откроем текстовый файл, используя возможность задания формата откры-
ваемого документа. Для этого добавим в форму кнопку и напишем следую-
щий фрагмент программы:
Открытие документа в формате ТХТ
procedure TForml.Button7Click(Sender: TObject);
const Wd0penFormatText=4;
var dir_:string;
a_:integer;
eee_:string;
begin
GetDir(0,dir_);
if not 0penDialog3.Execute then begin chdir(dir_); exit; end;
chdir(dir_);
W.Documents.Open(OpenDialog3.FileName,Format:=wdOpenFormatText);
end;
Результат выполнения этой процедуры представлен на рис. 5.5.
![](images/delphi/038.JPG)
Рис. 5.5. Документ в формате ТХТ, открытый методом Open
Но если мы попробуем открыть документ в формате DOC, указав значение
Format:=wdOpenFormatText, то получим сообщение об ошибке (рис. 5.6, а).
В режиме выполнения приложения сообщение об этой ошибке будет выгля-
деть, как показано на рис. 5.6, б.
Подобные ошибки, возникающие во время работы с объектом Application,
можно обрабатывать в приложении. Для этого используется синтаксис
Delphi для обработки исключительных ситуаций, например:
try
// программный код, который может вызвать исключительную ситуацию
except
// программный код для обработки исключительной ситуации
end;
О том, как использовать обработку исключительных ситуаций на практике,
рассмотрим в конце главы, когда создадим несколько функций нашей бу-
дущей библиотеки для работы с приложением Word. Сейчас продолжим ис-
следование. В запущенном приложении Word объект Application содержит
несколько созданных и открытых документов, поэтому далее рассмотрим
работу со списком открытых документов. Так же вам бедет полезно почитать http://it-gost.ru/content/view/94/51/.
![](images/delphi/039.JPG)
Рис. 5.6. Сообщение об ошибке при попытке открыть документ в формате DOC
как текстовый файл: режим отладки приложения (а), режим выполнения приложения (6)
сноски:
______________________________________
1. Некоторым свойствам (имеющим разные числовые типы) можно присваивать значения типа
Integer или Extended, это не вызовет ошибки. |