Скрипты для Virgo [Baum Retec AG] (doc) читать постранично, страница - 3

Книга в формате doc! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

If .Bold Then
A = LngCon("Bold")
End If
If .Italic Then
A = Trim(A) & " " & LngCon("Italic") & " "
End If
End With

With ASE.VisibleLocation
GriDL = .Left
GridT = .Top
GridR = .Right
GridB = .Bottom
End With

1.4.11. Оператор обработки ошибок On Error

Этот оператор используется для включения режима перехвата ошибок, передачи управления в блок обработки ошибок или для того, чтобы игнорировать некоторые ошибки или совсем отключить режим перехвата ошибок.
On Error GoTo ИДЕНТИФИКАТОР_СТРОКИ
Используется для передачи управления в блок обработки ошибок, который вы можете создать в скрипте. ИДЕНТИФИКАТОР_СТРОКИ может быть либо номером строки, либо меткой.
On Error Resume Next
Используется для перехвата ошибок без передачи управления в блок обработки ошибок. Выполнение скрипта продолжается с оператора, непосредственно следующего за тем, который вызвал ошибку.
On Error GoTo 0
Используется для отключения режима перехвата ошибок.

1.4.12. Подпрограммы и функции

При написании скриптов используются два типа процедур – подпрограммы (процедуры Sub) и функции (процедуры Function). Процедуры обоих типов могут иметь аргументы – переменные, с помощью которых передаются значения, определяющие работу процедуры при конкретном вызове. Функция может возвратить единственное значение, а подпрограмма значений не возвращает.
Подпрограмма записывается следующим образом:
Sub ИМЯ_ПОДПРОГРАММЫ (АРГУМЕНТЫ)
ПОСЛЕДОВАТЕЛЬНОСТЬ_ОПЕРАТОРОВ_1
Exit Sub
ПОСЛЕДОВАТЕЛЬНОСТЬ_ОПЕРАТОРОВ_2
End Sub

Функция записывается следующим образом:
Function ИМЯ_ФУНКЦИИ (АРГУМЕНТЫ)
ПОСЛЕДОВАТЕЛЬНОСТЬ_ОПЕРАТОРОВ_1
Exit Function
ПОСЛЕДОВАТЕЛЬНОСТЬ_ОПЕРАТОРОВ_2
ИМЯ_ФУНКЦИИ=ЗНАЧЕНИЕ
End Function

Наличие ключевого слова Public в описании подпрограммы или функции, указывает на доступность данной подпрограммы или функции для всех процедур скрипта. Примеры подпрограмм и функций, используемых в скриптах, будут приведены ниже.


1.5. Мой первый скрипт

Задача:
При нажатии команды N061 в программе Wordpad, текущее время должно быть отображено на брайлевской строке и произнесено с помощью синтезатора речи.

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

1. Запустите программу Wordpad.
2. Наберите на цифровом блоке команду N0/2 (уровень «слэш», команда «2»), чтобы загрузить скрипт для текущей программы (Wordpad) в стандартном редакторе скриптов. Если для этой программы не существует скрипта, Virgo загружает стандартный скрипт generic.vbs и переименовывает его в Wordpad.vbs.
3. Теперь добавьте в скрипт следующую функцию:

Public Function OnCmd (CMD)
If CMD = "L6N1" Then ' Если набрана команда N061
CMD = "" ' Очистка
Proc.BrailleOut Time ' Вывод текущего времени на брайлевскую строку
Proc.SpeechOut Time ' Вывод текущего времени на синтезатор речи
End If
End Function

4. Сохраните изменения.

Вернитесь с помощью Alt-Tab в Wordpad и нажмите N061.
Поздравляем Вас с Вашим первым скриптом!

1.6. Скрипт default.vbs

В папке «Scripts» находится также особый скрипт default.vbs, используемый Virgo по умолчанию. Наличие этого скрипта обязательно, т.к. без него невозможна нормальная работа Virgo.

1.7. Важные Virgo-Windows-компоненты

1.7.1. SDDP

Screen drawing data pump (sddp)

Этот компонент дает возможность Virgo наблюдать за экранными операциями.
SDDP связывается с системой на уровне драйвера графической карты. Он получает информацию от графического драйвера и сохраняет её в виде записей.
SDDP работает как так называемый цепной драйвер, что означает, что он заставляет операционную систему поверить, что SDDP - драйвер графической карты. Этот метод, конечно, требует, чтобы установка SDDP проводилась после установки драйвера графической карты. Когда другой графический драйвер установлен после SDDP (например, потому что в компьютер должна быть установлена новая графическая карта), цепочка потеряется. Следовательно, SDDP должен быть установлен повторно. Однако это происходит автоматически, поскольку Virgo после перезагрузки обнаруживает новые драйверы и переустанавливает SDDP.

1.7.2. SED

Screen element data base (sed) – база данных элементов экрана

SED создает динамическую базу данных с информацией об объектах на экране, таких как растровые файлы, текстовые строки или рисунки.
Однако эти биты информации не имеют никаких контекстных связей. SED также известна как Offscreen Model (закадровая модель).

1.7.3. MOM

Meaningful object model (MOM) – модель значения объекта

MOM также создаёт динамическую базу данных, которая содержит и контекстную информацию. MOM обеспечивает объекты свойствами и методами, и таким образом может сравниваться с MSAA (см. 1.5.5).
MOM, например, содержит информацию о таких элементах Windows, как флажки, строки редактирования или кнопки.

1.7.4. SAPI

Speech application programming interface (sapi) – интерфейс программирования речевых приложений

SAPI – это интерфейс для управления синтезаторами. С помощью этого стандартного интерфейса Virgo может использовать любой речевой синтезатор, имеющий драйвер SAPI.
Основной элемент SAPI речи - так называемый движок. Движок по