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

Методы Application

У объекта Application есть несколько методов, удобных для выполнения операций с приложением Word. Работа с методами Application аналогична работе с его свойствами. Для операций с самим приложением используйте следующие методы.

  1. CheckSpelling Проверяет провописание в строке текста. Возвращает True, если ошибки найдены, и False, если их нет. Этот метод не сообщает, какие именно ошибки обнаружены, и не позволяет исправить их, но удобен, если вы хотите просто проверить какой-то текст на наличие орфографических ошибок и узнать, есть в нем ошибки или нет. Следующий код проверяет строку "Speling erors here" и выводит результат в MessageBox.

    view source

    print?

    01.' Visual Basic

    02.Friend Sub SpellCheckString()

    03. ' Проверяет указанную строку на орфографические ошибки

    04. Dim str As String = "Speling erors here."

    05. If ThisApplication.CheckSpelling(str) Then

    06.  MessageBox.Show(String.Format("No errors in ""{0}""", str))

    07. Else

    08.  MessageBox.Show(String.Format( _

    09. """{0}"" is spelled incorrectly", str))

    10. End If

    11.End Sub

    12.   

    13.// C#

    14.public void SpellCheckString() 

    15.{

    16. // Проверяет указанную строку на орфографические ошибки

    17. string  str = "Speling erors here.";

    18.   

    19. Object CustomDictionary = Type.Missing;

    20. Object IgnoreUppercase = Type.Missing;

    21. Object MainDictionary = Type.Missing;

    22. Object CustomDictionary2 = Type.Missing;

    23. Object CustomDictionary3 = Type.Missing;

    24. Object CustomDictionary4 = Type.Missing;

    25. Object CustomDictionary5 = Type.Missing;

    26. Object CustomDictionary6 = Type.Missing;

    27. Object CustomDictionary7 = Type.Missing;

    28. Object CustomDictionary8 = Type.Missing;

    29. Object CustomDictionary9 = Type.Missing;

    30. Object CustomDictionary10 = Type.Missing;

    31.   

    32. // Метод CheckSpelling принимает массу необязательных

    33. // параметров

    34. if ( ThisApplication.CheckSpelling(str, ref CustomDictionary, 

    35.  ref IgnoreUppercase, ref MainDictionary, ref CustomDictionary2,

    36.  ref CustomDictionary3, ref CustomDictionary4, 

    37.  ref CustomDictionary5, ref CustomDictionary6, 

    38.  ref CustomDictionary7, ref CustomDictionary8, 

    39.  ref CustomDictionary9, ref CustomDictionary10) ) 

    40. {

    41.  MessageBox.Show(String.Format("No errors in \"{0}\"", str));

    42. } 

    43. else 

    44. {

    45.  MessageBox.Show(

    46.   String.Format("\"{0}\" is spelled incorrectly", str));

    47. }

    48.}

    Совет Это еще один пример тому, насколько разработчикам на Visual Basic .NET легче, чем разработчикам на C#. Метод CheckSpelling принимает единственный строковый параметр и целый набор необязательных параметров. Из-за этого разработчикам на C# приходится передавать методу целую серию переменных по ссылке - в данном случае группу переменных с одинаковым значением Type.Missing. Наверное, при неоднократном вызове подобных методов удобнее создать вспомогательный класс - оболочку для вызова метода. Такой класс мог бы включать методы, которые предоставляют доступ лишь к наиболее полезным параметрам Word-метода.

  2. Help Отображает диалоговые окна Help. Чтобы выбрать конкретное окно, укажите одно из перечислимых значений WdHelpType:

  3. WdHelp - выводит основное диалоговое окно Help в Microsoft Word;

  4. WdHelpAbout - выводит диалоговое окно, доступное в UI по команде Help | About Microsoft Word;

  5. WdHelpSearch - выводит основное диалоговое окно Help с Answer Wizard.

    Следующий код выведет на экран диалоговое окно About Microsoft Word:

    view source

    print?

    01.' Visual Basic

    02.Friend Sub DisplayHelpAbout()

    03. ThisApplication.Help(Word.WdHelpType.wdHelpAbout)

    04.End Sub

    05.   

    06.// C#

    07.public void DisplayHelpAbout() 

    08.{

    09. Object value = Word.WdHelpType.wdHelpAbout;

    10. ThisApplication.Help(ref value);

    11.}

  6. Move Перемещает основное окно приложения на основе обязательных целочисленных аргументов Left и Top.

  7. Resize Изменяет размеры основного окна приложения на основе обязательных аргументов Width и Height (в точках). Вот пример кода, который перемещает окно приложения в левый верхний угол экрана и изменяет размеры этого окна:

    view source

    print?

    01.' Visual Basic

    02.Friend Sub MoveAndResizeWindow()

    03. ' Этот код не сработает, если окно развернуто во весь экран

    04. ' или свернуто

    05. ThisApplication.ActiveWindow.WindowState = _

    06.   Word.WdWindowState.wdWindowStateNormal

    07.   

    08. ' Позиция в левом верхнем углу

    09. ThisApplication.Move(0, 0)

    10.   

    11. ' Изменяем размеры на 300 x 600 точек

    12. ThisApplication.Resize(300, 600)

    13.End Sub

    14.   

    15.// C#

    16.public void MoveAndResizeWindow() 

    17.{

    18. // Этот код не сработает, если окно развернуто во весь экран

    19. // или свернуто

    20. ThisApplication.ActiveWindow.WindowState = 

    21.  Word.WdWindowState.wdWindowStateNormal;

    22.   

    23. // Позиция в левом верхнем углу

    24. ThisApplication.Move(0, 0);

    25.   

    26. // Изменяем размеры на 300 x 600 точек

    27. ThisApplication.Resize(300, 600);

    28.}

  8. Quit Выход из Word. При этом вы можете (необязательно) передать одно из значений из перечислимого WdSaveOptions: wdSaveChanges, wdPromptToSaveChanges или wdDoNotSaveChanges. Следующий фрагмент кода показывает все три варианта выхода из Word:

view source

print?

01.' Visual Basic

02.' Автоматически сохраняем все изменения

03.ThisApplication.Quit(Word.WdSaveOptions.wdSaveChanges)

04.   

05.' Выводим запрос на сохранение изменений

06.ThisApplication.Quit(Word.WdSaveOptions.wdPromptToSaveChanges)

07.   

08.' Выходим без сохранения изменений

09.ThisApplication.Quit(Word.WdSaveOptions.wdDoNotSaveChanges)

10.   

11.// C#

12.// Автоматически сохраняем все изменения

13.Object saveChanges = Word.WdSaveOptions.wdSaveChanges;

14.Object originalFormat = Type.Missing;

15.Object routeDocument = Type.Missing;

16.ThisApplication.Quit(ref saveChanges, 

17. ref originalFormat, ref routeDocument);

18.   

19.// Выводим запрос на сохранение изменений

20.saveChanges = Word.WdSaveOptions.wdPromptToSaveChanges;

21.originalFormat = Type.Missing;

22.routeDocument = Type.Missing;

23.ThisApplication.Quit(ref saveChanges, 

24. ref originalFormat, ref routeDocument);

25.   

26.// Выходим без сохранения изменений

27.saveChanges = Word.WdSaveOptions.wdDoNotSaveChanges;

28.originalFormat = Type.Missing;

29.routeDocument = Type.Missing;

30.ThisApplication.Quit(ref saveChanges, 

31. ref originalFormat, ref routeDocument);

Совет Метод Application.Quit - еще один пример из списка методов, требующих особого обращения в C#. В данном случае метод требует передачи трех параметров только по ссылке.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]