Самый простой способ сохранения документа заключается в вызове метода
Save объекта-документа, например: W.ActiveDocument.Save. Данный способ
удобно использовать, если документ ассоциирован с файлом на диске. Ко-
гда мы попробуем сохранить с помощью этого метода вновь созданный до-
кумент, то откроется диалоговое окно (рис. 5.12), активированное приложе-
нием Word.
Рис. 5.12. Попытка сохранить новый документ с помощью метода Save
Если мы закроем диалог без сохранения документа, то получим ошибку. На
рис. 5.13 отображено диалоговое окно с сообщением об исключительной
ситуации, возникшей в режиме отладки программы.
Рис. 5.13. Отображение ошибки выполнения метода Save (режим отладки приложения)
В режиме выполнения откомпилированного приложения сообщение об этой
ошибке будет выглядеть, как показано на рис. 5.14.
Чтобы избежать появления ошибок выполнения, необходимо при выполне-
нии процедур сохранения документа обрабатывать исключительные ситуа-
ции. Используйте конструкцию try ... except ... end языка Delphi. В случаях,
когда не нужно выводить диалоговое окно сохранения документа, его мож-
но подавить. Метод подавления диалоговых окон Word будет рассмотрен
позже.
Рис. 5.14. Отображение ошибки выполнения метода Save
(режим выполнения приложения)
Эффективным способом избежать ошибок, возникающих при сохранении
документов, может быть проверка "был документ сохранен или нет" и ис-
пользование для сохранения метода SaveAs. Для проверки факта сохранения
открытого документа на диск используйте свойство документа Saved — если
оно имеет значение True, то документ был сохранен, если False — нет.
Рассмотрим следующий фрагмент программы.
Проверка факта сохранения документа
procedure TUG5CH22_.Button5Click(Sender: TObject);
begin
i f W.ActiveDocument.Saved, then
messagebox(handle,'Документ сохранен!','Внимание!',0);
i f not W.ActiveDocument.Saved then
messagebox(handle,'Документ не сохранен!','Внимание!',0);
end;
Результат выполнения может быть одним из двух (рис. 5.15 и 5.16).
Рис. 5.15. Документ был сохранен
Рис. 5.16. Документ не был сохранен
Если вновь созданный документ не был сохранен, то для его записи на диск
используется метод SaveAs. В спецификации языка Visual Basic (VB) он опи-
сан так:
ActiveDocument.SaveAs(FileName, FileFormat, LockComments, Password,
AddToRecentFiles, WritePassword, ReadOnlyRecommended,
EmbedTrueTypeFonts, SaveNativePictureFormat, SaveFormsData,
SaveAsAOCELetter)
Аргументы метода SaveAs определяют режимы и формат файла для сохра-
няемого документа. Используя их при вызове метода, можно добиться тако-
го же результата, как и в режиме обычного пользователя приложения Word.
Аргументы метода, их типы и назначение представлены в табл. 5.3. Если вы хотите настроить сеть в вашем офисе тогда посмотрите http://www.goodstor.ru/articles/prodazha-cisco.html.
Таблица 5.3. Аргументы метода SaveAs, их типы и функциональное назначение
При вызове метода SaveAs можно задавать как один, так и несколько аргу-
ментов — количество определяется только необходимостью их использова-
ния в создаваемом приложении. Обычно достаточно первого аргумента
(путь и имя файла).
При вызове метода SaveAs из приложений, созданных в Delphi, есть некото-
рые отличия синтаксиса от вызова в VB, но они не принципиальны.
Рассмотрим примеры синтаксиса вызовов метода SaveAs в Delphi.
Сохранение документа с указанием пути и имени файла:
W.ActiveDocument.SaveAs(MyFileName);
W.ActiveDocuraent.SaveAs(FileName:=MyFileName);
где MyFileName — строка, содержащая путь и имя файла.
Сохранение документа с указанием пути и имени файла, а также пароля:
W.ActiveDocument.SaveAs(FileName:=MyFileName,
Password:='мой пароль')
Сохранение документа, ассоциированного с именем файла, с указанием
пароля:
W.ActiveDocument.SaveAs(Password:='Mou пароль')
Для задания или изменения формата сохраняемого документа необходимо
использовать числовой аргумент FileFormat, значения которого представле-
ны в табл. 5.4.
Таблица 5.4. Значения аргумента FileFormat метода SaveAs
и форматы файлов сохраняемых документов
Итак, мы открыли документ, считали из него текст, внесли в документ не-
обходимые изменения и сохранили его. Теперь нужно закрыть его и закон-
чить работу с приложением Word. |