Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
всё о скриптах JAWS.docx
Скачиваний:
3
Добавлен:
01.05.2025
Размер:
312.03 Кб
Скачать

Insert PerformScript (вставить выполнение скрипта) - при выборе этой

опции вы попадаете в список, содержащий все доступные скрипты,

которые вы можете вызвать из скрипта, который вы пишете. Вы

можете перемещаться по списку клавишами-стрелками, или начать

набирать имя скрипта, чтобы перескочить к нему. Нажатие Enter на

одном из имен, например, скрипта SayMyName" приведет к тому, что в

вашем скрипте появится следующая строка:

PerformScript SayMyName()

Эта строка приведет к тому, что будет выполнен скнипт "SayMyName",

как если бы вы сами нажали клавишу. Таким способом можно

повторно использовать скрипты, которые вы уже написали, не

переписывая код заново.

Создание простых скриптов

Примером простого скрипта может быть скрипт, в котором вы можете

прочитать текст, расположенный где-то на экране, с помощью нажатия

одной клавиши. Один способ сделать это будет состоять в выборе

курсора, перемещении его в заданную точку на экране, где находится

текст, и чтении этого текста. В этом разделе мы пройдемся по тому,

как создаются такие скрипты, сложив вместе функции, которые и

отвечают за подобные вещи.

Документация скрипта

С каждым скриптом ассоциирована документация. Как уже было

сказано, вы вводите эту документацию при создании нового скрипта.

Простые клавиши всегда закреплены за клавишами, и требуют только 5

фрагментов документации. Далее приводится описание каждого поля,

которое требуется для простого скрипта.

Script Name - введите имя вашего скрипта.

Блок проверки Can be attached to Key - всегда включайте этот блок

проверки для скриптов, привязанных к клавишам.

Synopsis - представьте краткое описание назначения вашего скрипта.

Description - представьте дополнительную информацию о вашем скрипте.

Category - выберите категорию для вашего скрипта. Название категории

нужно либо набрать непосредственно, либо выбрать его из списка.

Постарайтесь выбирать такие категории, которые будут иметь смысл,

чтобы позже перечислить их в логическом порядке, в том случае, если

эта возможность будет добавлена в диспетчер скриптов.

Структура отдельного скрипта

Помните, что файл скриптов состоит из одного или более скриптов.

Как уже было указано, скрипт должен обладать следующей

структурой, при чем его части должны следовать именно в

нижеприведенном порядке:

Сначала идет начальное ключевое слово скрипта. Это просто слово

"Script", после которого идет пробел. На той же строке, после слова

"Script", записывается имя скрипта. Это обычно несколько слов,

объединенных вместе, и описывающих действие данного скрипта,

например CloseDocumentWindow. Обратите внимание, что каждое из

соединенных вместе слов начинается с заглавной буквы, чтобы Jaws

мог их корректно прочесть. Затем следует () которая и завершает

оператор начала скрипта. Все это автоматически вводится диспетчером

скриптов, когда вы создаете новый скрипт с помощью диалога New

Script. (если вы обнаружили, что ваша копия Jaws произносит такие

слова неправильно, проверьте опцию Mixed Case Processing (Обработка

смешанного регистра) раздела Text Processing (Обработка текста) меню

Set Options (Установка параметров) в диспетчере конфигурации. Этот

блок проверки должен быть включен).

Далее следует тело скрипта. Оно состоит из всех инструкций, которые

вы добавите при написании скрипта, такие, как объявления

переменных, операторы контроля переполнения, вызовы функций,

операторы выполнения скриптов, арифметические операции и

комментарии. (Вы узнаете о каждом из этих типов инструкций, по

мере нашего продвижения по руководству). Скрипт может быть и

простым, например, озвучивающим строку, как мы видели в главе "Наш

первый скрипт", или он может включать в себя много функций для

выполнения сложных операций.

Ключевое слово окончания скрипта EndScript всегда стоит в последней

строке скрипта. Она автоматически добавляется диспетчером скриптов,

когда вы создаете скрипт.

Использование функций скриптов

Теперь давайте рассмотрим несколько общеупотребительных функций, с

помощью которых можно перемещаться по экрану и читать текст.

Чтение текста

Ниже приведены некоторые функции, используемые для чтения текста:

SayCharacter() - читает символ в позиции активного курсора.

SayWord() - читает слово в позиции активного курсора.

SayToCursor - читает от начала строки до активного курсора.

SayFromCursor - читает от позиции активного курсора до конца строки.

SayColor - называет цвет шрифта в позиции активного курсора.

SayFont - называет шрифт и его размер в позиции активного курсора.

SayTextBetween - озвучивает весь текст между двумя координатами

столбцов на строке, где находится активный курсор.

SayWindow - озвучивает окно в позиции активного курсора.

SayToBottom - читает весь текст от позиции активного курсора до

нижнего края окна.

SayString() - читает текст, заключенный между скобками. Текст должен

быть помещен в двойные кавычки.

Say - озвучивает строку текста, используя некоторый набор речевых

характеристик, называемых средствами вывода. Возможно использовать

раздельные способы вывода для озвучивания строк заголовка, органов

управления в диалогах, пунктах меню, и т.д.

SayAll - читает всю читаемую информацию от позиции активного

курсора до нижнего края окна. Если активным является PC курсор,

Jaws прокручивает экран, перемещая PC курсор вниз. Если активным

является Jaws курсор, будет прочитана оставшаяся часть окна, путем

построчного перемещения Jaws курсора.

SayChunk - озвучивает цепочку информации, на которую указывает

активный курсор. Цепочка - это текстовая или графическая

информация, которая была написана на экране в течение одной

операции. SayChunk подобна функции SayField, однако функция

SayField использует логику, чтобы определить, какой текст озвучивать,

тогда как SayChunk просто читает текст, который был сохранен в

модели Off Screen в качестве одинарной единицы.

SayField - читает поле текста, на которое указывает активный курсор.

Полем называется раздел или блок текста, имеющий общий атрибут,

например жирный шрифт, курсив, подчеркивание и т.п. Использование

атрибута должно быть непрерывным. Функция SayField использует

логику для определения текста, который должен быть озвучен, тогда

как функция SayChunk просто читает текст, который был сохранен в

модели Jaws Off screen в качестве одинарной единицы.

SayFrame - читает содержание указанного фрейма.

SayFrameAtCursor - озвучивается весь текст, находящийся в границах

фрейма, в котором находится активный курсор.

SayFrameAtCursor - озвучивает целочисленное значение данных, часто

содержание целочисленной переменной.

SayParagraph - читает текущий абзац от начала.

SaySentence - читается предложение, которое содержит символ, на

который указывает активный курсор.

Перемещение по экрану

Прежде чем вы попытаетесь прочитать что-нибудь на экране с

помощью скрипта, вам вероятно понадобится переместить один из

курсоров к тому месту, где находится объект, который вы хотите

прочитать. Следовательно, важно будет понять кое-что о курсорах. Для

тех, кто пользуется Jaws без брайлевского дисплея, есть три типа

курсора: PC курсор, Jaws курсор и invisible (невидимый) курсор. Те,

кто пользуется еще и брайлевским дисплеем, получают и четвертый

курсор, Braille курсор. (этот курсор предназначен для внутреннего

использования брайлевским дисплеем, и он никогда не должен

оставаться после выполнения скрипта). Если вы вводите или

редактируете текст, PC курсор будет находиться там, куда будут

помещаться символы при их вводе с клавиатуры. (Этот курсор

редактирования или вставки также называется курсором каретки).

Однако, если вы находитесь в меню или перемещаетесь клавишей Tab

по кнопкам в окне диалога, на экране нет курсора каретки. В этом

случае PC курсором становится фокус. Если вы хотите прочитать

другие области окна, или прочитать часть экрана, куда PC курсор

переместиться не может, вы можете переключиться на Jaws курсор.

Jaws курсор можно перемещать куда угодно в границах реального

окна, что делает возможным исследование областей экрана, куда не

может переместиться PC курсор. Кстати, реальным окном называется

окно, которое имеет заголовок. Это означает, что в норме ваш Jaws

курсор ограничен только перемещением в границах родительского окна наивысшего

уровня, с заголовком, начиная от окна, в котором вы в данный момент

находитесь. Именно это мы и имеем в виду, когда говорим, что Jaws

курсор ограничен границами реального окна (если вы хотите

ограничить Jaws курсор границами окна, в котором вы в данный

момент находитесь, даже если оно не является реальным окном, вы

можете сделать это, воспользовавшись комбинацией клавиш Insert+R).

Поскольку Jaws курсор всегда тащит за собой указатель мыши,

указатель мыши всегда помещается в позицию Jaws курсора, и его

всегда можно щелкнуть, если вы того пожелаете

Третий вид курсора называется Невидимый курсор (Invisible cursor). В

одном отношении.этот курсор подобен Jaws курсору, поскольку его

перемещение ограничивается только границами реального окна, но на

экране нет его видимого представления, поскольку он не тащит за

собой указатель мыши.

Как пользоваться этими курсорами?

Часто бывает непрактично или просто невозможно исследовать экран с

помощью PC курсора. Поэтому, прежде чем прочитать какой-либо

текст на экране, нам лучше переключиться на какой-нибудь из двух

других курсоров.

Для выполнения операций чтения можно использовать как Jaws, так и

невидимый курсор, поэтому до определенной степени выбор курсора

является вопросом личных предпочтений. Однако, бывают ситуации,

когда вам придется предпочесть один из этих курсоров другому. Если вы

намереваетесь щелкнуть кнопкой мыши или предпринять какое-либо другое

действие с мышью, необходимо будет использовать Jaws курсор. Поскольку

указатель мыши сопровождает Jaws курсор в его путешествиях, то щелкнуть

мышью становится очень простым делом, поскольку она уже находится в

нужной позиции. Если вы не хотите перемещать Jaws курсор с его текущей

позиции, или не будет никакой необходимости на чем-нибудь щелкать,

лучшим выбором будет невидимый (invisible) курсор. На ум приходит

конкретная ситуация, когда вам уж точно не захочется перемещать указатель

мыши/Jaws курсор. Иногда в Windows информационный текст появляется

где-то на экране, обычно в строке состояния, когда указатель мыши находится

в определенной позиции. Если вы переместите Jaws курсор чтобы прочитать

текст, указатель мыши переместится вместе с ним, и текст исчезнет. Чтобы

прочитать такой текст, вы должны будете пользоваться невидимым курсором.

Да и вообще, было бы неплохо пользоваться невидимым курсором для чтения

текста, когда не нужно делать никаких щелчков, если нет конкретной

причины использовать Jaws курсор. В некоторых случаях бывает необходимо

переместить один из курсоров, например, Jaws курсор, даже если вы хотите

вернуть его в первоначальную позицию, когда скрипт закончит работу. На

этот случай имеются функции SaveCursor и RestoreCursor, с помощью которых

все можно вернуть в то положение, каким оно было до начала выполнения

вашего скрипта. Ниже приводится список функций, которыми можно

пользоваться, чтобы выбирать курсоры и манипулировать ими.

PCCursor() - активизирует системный курсор.

JAWSCursor() - активизирует Jaws курсор.