
- •9.1. Объектная модель ms Word
- •9.2. Работа с объектными переменными
- •9.3. Объект Application - приложение
- •9.4. Методы объекта Application
- •9.4.1. BuildKeyCode, KeyString - горячие клавиши
- •9.4.2. ChangeFileOpenDirectorу - путь для работы с файлами
- •9.4.3. CleanString - очистка строк
- •9.4.4. Keyboard - программное переключение раскладки
- •9.4.5. ListCommands - справка по горячим клавишам
- •9.4.6. NewWindow - копия окна активного документа
- •9.4.7. OnTime - запуск макросов по расписанию
- •9.4.8. PrintOut - распечатка документов
- •9.4.9. Quit - выход из приложения
- •9.4.11. ScreenRefresh - принудительное обновление экрана
- •9.5. Свойства объекта Application
- •9.5.1. ActiveDocument и другие - активный документ
- •9.5.2. CapsLock - текущее состояние Caps Lock
- •9.5.3. Caption - заголовок окна ms Word
- •9.5.4. CustomizationContext - область сохранения настроек
- •9.5.5. Dialogs - диалоговые окна ms Word
- •9.5.6. DisplayAlerts - управление выводом сообщений
- •9.5.7. EnableCancelKey - запрещаем остановку программы
- •9.5.8. IsObjectValid - проверка объектных переменных
- •9.5.9. KeyBindings - назначаем клавиатурные сокращения
- •9.5.10. NumLock - состояние цифровой клавиатуры
- •9.5.11. RecentFiles - недавно открытые файлы
- •9.5.12. ScreenUpdating - запрет обновления экрана
- •9.5.13. StatusBar - вывод информации в строку состояния
- •9.5.14. System - системная информация
- •9.5.15. Tasks - работа с запущенными приложениями
- •9.5.16. Visible - скрытие окна ms Word
- •9.5.17. Windows - работа с окнами
- •9.6. События объекта Application
9.5.10. NumLock - состояние цифровой клавиатуры
NumLock возвращает состояние клавиши NumLock - True если цифровая клавиатура находится в режиме ввода цифр, иначе - False.
9.5.11. RecentFiles - недавно открытые файлы
RecentFiles - позволяет работать с файлами, которые вы недавно открывали. Список этих файлов можно увидеть в диалоговом окне открытия файлов. Последний файл, с которым вы работали, хранится в списке первым. Чтобы открыть его, можно воспользоваться кодом из листинга 9.29.
RecentFiles(1).Open
Листинг 9.29. Открываем последний из недавно открытых файлов (html, txt)
9.5.12. ScreenUpdating - запрет обновления экрана
09-06-ScreenUpdating.docm - пример к п. 9.5.12.
Свойство ScreenUpdating используют для отключения обновления экрана во время вывода в документ большого количества информации или других действий с документом. Это позволяет ускорить работу, так как системные ресурсы не тратятся на постоянное обновление экрана. В листинге 9.30. мы запрещаем обновление экрана, выводим в документ 10000 строк, принудительно обновляя экран после каждой 1000 строк, после чего разрешаем автоматическое обновление.
Application.ScreenUpdating = False
For i = 1 To 10
For j = 1 To 1000
Selection.TypeText ("Строка №" + Str(i * j))
Selection.TypeParagraph
Next j
Application.ScreenRefresh
Next i
Application.ScreenUpdating = True
Листинг 9.30. Запрет и разрешение обновления экрана (html, txt)
Очевидно, что присвоив False свойству ScreenUpdating мы запрещаем обновление экрана, а присвоив True - разрешаем.
9.5.13. StatusBar - вывод информации в строку состояния
09-07-Status Bar.docm - пример к п. 6.3.2.13
Модифицировав свойство StatusBar вы можете записать любой текст в строку состояния Microsoft Word. Туда можно выводить сообщения о ходе выполнения какой-нибудь длительной операции и т.д. В листинге 9.31. приведен пример использования этого свойства.
Application.StatusBar = "Пожалуйста, подождите..."
Листинг 9.31. Вывод фразы в StatusBar (html, txt)
9.5.14. System - системная информация
09-08-System.docm - пример к п. 9.5.12.
Это свойство возвращает объект System, который дает доступ к различной системной информации (о разрешение экрана, типе процессора, объеме свободного места на жестких дисках и т.д.)
Например, свойство FreeDiskSpace объекта System позволяет узнать размер свободного пространства на текущем жестком диске (листинг 9.32.)
Dim var_DiskSize As Variant
var_DiskSize = Application.System.FreeDiskSpace
var_DiskSize = Int(var_DiskSize / (1024 ^ 2))
If var_DiskSize >= 2047 Then _
MsgBox ("На текущем HDD более 2 Гб свободного места") _
Else MsgBox ("Размер свободного места на текущем диске " + _
"равен " + Str(var_DiskSize) + " Мб")
Листинг 9.32. Определение свободного дискового пространства (html, txt)
В этом примере мы учитываем тот факт, что при определении свободного места свойство FreeDiskSpace, во-первых, возвращает значение в байтах, а во-вторых - максимальное значение, возвращаемое функцией, не превышает 2,147,483,647 байт, то есть 2048 Мб или 2 Гб. Для получения значения в мегабайтах мы делим полученное значение на 1024 во второй степени.