Отправляет email-рассылки с помощью сервиса Sendsay

Screen reader JAWS for Windows Russian

За 2009-04-15

[JFWRus] Re[8]: функцияFindGraphic

Здравствуйте, Литус.

Вы писали 15 апреля 2009 г., 20:27:49:

ЛА> Если можно опешите здесь подробнее такой метод применяеться
ЛА> в компонентах

Это не правило а скорее конкретная ситуация, бывает просто не
достаточно проверки только текущего класса.
Вот пример ранее указанной функции.
Int Function IsAddressGrid ()

return !MenusActive ()
Если не активно меню, а то бывают случаи, когда при активном меню
возвращается класс элемента бывшего активным до вызова меню.

&& !DialogActive ()
Если не активно диалоговое окно, возможно это и лишняя проверка,
но не мешает.
&& GetWindowClass (GetFocus ()) == "TFieldInEdit"
Проверяем текущий класс.
&& GetWindowClass (GetParent (GetFocus ())) == "TAddressGrid"
Проверяем класс родителя.
Здесь проверяется ряд условий, и если они все выполняются, то это
действительно искомый нами элемент.
Можно делать проверку по тексту на экране, но это привязка к
языковому интерфейсу
программы, что не очень хорошо, лучше этого избегать.
Конечно лучше использовать идентификатор элемента управления
(ControlID), но в VCL компонентах он динамический, и нет смысла
его проверять он всегда равен дескриптору окна. Хотя в некоторых
диалоговых окнах Word есть элементы с одинаковыми
идентификаторами.

   2009-04-15 23:13:54 (#845888)

[JFWRus] Re[7]: функцияFindGraphic

здравствуйте Алег.
>
> >> RouteInvisibleToPc ()
> >> if (FindGraphic (GetFocus (), "adress", S_bottom ,
> >> S_RESTRICTED)
> >> || FindGraphic (GetFocus (), "adres", S_bottom ,
> >> S_RESTRICTED))
> Иногда график бывает разным, так делаю поиск хоть одного из
> двух. Причем в текущем окне и снизу окна.

Если можно опешите здесь подробнее такой метод применяеться в компонентах
VCL
(Delphi, CBuilder) или предпочтительнее применять во всех случаях.

С уважением Алексанндр.
Днепропетровск
http://disciplina.at.ua
тел: +38 (068) 40-42-995

***
Это сообщение No 8530
было разослано для 475 участников дискуссионного листа
[JFWRus] Re[7]: функцияFindGraphic

   2009-04-15 21:39:25 (#845846)

[JFWRus] Moderatorial Re[7]: функцияFindGraphic

Здравствуйте, Олег.

Вы писали 15 апреля 2009 г., 18:32:31:

ОК> прокоментирую.
ОК> В них дискриптор окна равен эдентификатору

Господа обращайте внимание на грамматику и правописание.
Сам написал, прочитал и ужаснулся.

   2009-04-15 20:49:51 (#845822)

[JFWRus] Re[6]: функцияFindGraphic

Здравствуйте, Литус.

Вы писали 15 апреля 2009 г., 16:38:32:

>> if IsAddressGrid () then
прокоментирую.
Это скрипт для щелчка на графическом элементе в программе Thebat.
В частности вызов пользовательской функции эдинтификации окна, по
классу, так как эта программа написана на компонентах VCL
(Delphi, CBuilder).
В них дискриптор окна равен эдентификатору
контрола.
Кстати в таких программах я для большей достоверности проверяю
сразу не только текущий класс, но и классы родителя, наследника и
окон на текущем уровне.
>> ;SaveCursor ()
>> InvisibleCursor ()
По возможности предпочитаю не дёргать Джоз курсор, чтобы не
появлялись подсказки.

>> RouteInvisibleToPc ()
>> if (FindGraphic (GetFocus (), "adress", S_bottom ,
>> S_RESTRICTED)
>> || FindGraphic (GetFocus (), "adres", S_bottom ,
>> S_RESTRICTED))
Иногда график бывает разным, так делаю поиск хоть одного из
двух. Причем в текущем окне и снизу окна.
>> then
>> RoutePCToInvisible ()
Эта функция выполняет щелчок мыши, предпочитаю использовать для
активизации элемента эту функцию.
>> Endif
>> else
>> TypeCurrentScriptKey ()
а иначе отдаётся в приложение комбинации.
>> endif
функцию restorecursor можно не писать, она автоматически
выполняется в конце скрипта. Обязательно писать если её надо
выполнить не в конце скрипта.
>>

   2009-04-15 19:33:20 (#845799)

[JFWRus] Re[2]: jaws мышь, и работа с зрячими коллегами

Здравствуйте, Oleg.

Вы писали 13 апреля 2009 г., 17:07:28:

> Экранный указатель движения виртуального
> курсора реализован при
> совместном использовании JAWS 9 или выше и
> MAGic 11. Попробуйте скачать

Да я понял. спасибо, но систему загружать просто больше небуду.
Ну и хотел его потому восновном, что возникают проблемы с сылками, где
нету ссылки как таковой, а graphic clickable.
то там просто трудно попадать по таким ссылкам.
jaws курсор если подтянуть к pc курсору, то не помогает.
Дело в том, что просто бывает, что много таких ссылок на форумах, и
никто не думает о незрячих пользователях, при изготовлении такого веб
дизайна.
И с теми ссылками трудно бороться, бо ни jaws курсор к pc курсору не
поможет, и инсерт +ентер тоже не помогает.
С почтением Андрей.

   Andrij Stegnitskiy 2009-04-15 18:54:25 (#845786)

[JFWRus] Re[3]: функцияFindGraphic

Vande omentaina, Литус!

ЛА> припопытке скомпилировать ругаеться на "MyMetka" в чём может быть загвоздка.

А вы пометили график? У вас есть метка с таким названием в .jgf-файле?

   Anarendil 2009-04-15 18:45:36 (#845779)

[JFWRus] Re[5]: функцияFindGraphic

> Script PickAddresses ()
>
>
> if IsAddressGrid () then
> ;SaveCursor ()
> InvisibleCursor ()
> RouteInvisibleToPc ()
> if (FindGraphic (GetFocus (), "adress", S_bottom , S_RESTRICTED)
> || FindGraphic (GetFocus (), "adres", S_bottom , S_RESTRICTED))
> then
> RoutePCToInvisible ()
> Endif
> else
> TypeCurrentScriptKey ()
> endif
>
> EndScript
Если чесно несильно понял конструкцию но самое для меня удевительное зачем такие
манипуляции с курсором сохранять его потом кудато переносить а в конце он даже
не реставрируеться "RestoreCursor ()" ненаблюдаеться да и что делает функция
RoutePCToInvisible () подскажите чайнику.

С уважением Алексанндр.
Днепропетровск
http://disciplina.at.ua
тел: +38 (068) 40-42-995

***
Это сообщение No 8525
было разослано для 475 участников дискуссионного листа
[JFWRus] Re[5]: функцияFindGraphic

   2009-04-15 17:40:58 (#845756)

[JFWRus] Re[4]: функцияFindGraphic

Здравствуйте, Руслан.

Вы писали 15 апреля 2009 г., 9:36:23:

РУ> И, вызывать LeftMouseButton () после
РУ> FindGraphic () необходимо при услови

т.е. должно быть условие, например:
Script PickAddresses ()

if IsAddressGrid () then
;SaveCursor ()
InvisibleCursor ()
RouteInvisibleToPc ()
if (FindGraphic (GetFocus (), "adress", S_bottom , S_RESTRICTED)
|| FindGraphic (GetFocus (), "adres", S_bottom , S_RESTRICTED))
then
RoutePCToInvisible ()
Endif
else
TypeCurrentScriptKey ()
endif

EndScript

   2009-04-15 14:27:09 (#845694)

[JFWRus] Re[4]: функцияFindGraphic

> MyMetka должна быть либо строковой переменной (константой),
> либо должна быть заключена в кавычки.
> И еще раз, она должна точно совпадать с меткой,
> определенной для графического изображения.
>
> > и подскажите что это > 3 - целое, кодирующее направление поиска
> > (S_TOP или S_BOTTOM).
>
> Эти константы определены в файле hjconst.jsh.
>
> S_TOP = 0, ; s INDICATES SEARCH TYPE, for find string, find graphic,
> FindColors
> S_BOTTOM = 1,
>
> Они определяют откуда начнется поиск,
> от верха окна или от его низа.
>
> И, вызывать LeftMouseButton () после
> FindGraphic () необходимо при условии успешного завершения поиска.

Теперь работает:

include "hjconst.jsh"

Script test ()
If FindGraphic (525576, "Регистрация", S_TOP, S_UNRESTRICTED)
Then
LeftMouseButton ()
Else
SayString ("Не доступно")
EndIf

PCCursor ()
EndScript

Я думаю тему можно закрыть большое спасиба Руслан.

С уважением Алексанндр.
Днепропетровск
http://disciplina.at.ua
тел: +38 (068) 40-42-995

***
Это сообщение No 8523
было разослано для 475 участников дискуссионного листа
[JFWRus] Re[4]: функцияFindGraphic

   2009-04-15 11:19:06 (#845630)

[JFWRus] Re[3]: функцияFindGraphic

Доброго времени суток, Литус Александр.

Из сообщения от 15.04.2009 9:06:

> Script test ()
> FindGraphic (525576, MyMetka, S_TOP, S_UNRESTRICTED)
> LeftMouseButton ()
> EndScript
> припопытке скомпилировать ругаеться на "MyMetka" в чём может быть
> загвоздка.

MyMetka должна быть либо строковой переменной (константой),
либо должна быть заключена в кавычки.
И еще раз, она должна точно совпадать с меткой,
определенной для графического изображения.

> и подскажите что это > 3 - целое, кодирующее направление поиска
> (S_TOP или S_BOTTOM).

Эти константы определены в файле hjconst.jsh.

S_TOP = 0, ; s INDICATES SEARCH TYPE, for find string, find graphic,
FindColors
S_BOTTOM = 1,

Они определяют откуда начнется поиск,
от верха окна или от его низа.

И, вызывать LeftMouseButton () после
FindGraphic () необходимо при условии успешного завершения поиска.

С уважением, Руслан Усачев
RUsach***@t*****.by

***
Это сообщение No 8522
было разослано для 475 участников дискуссионного листа
[JFWRus] Re[3]: функцияFindGraphic

   Руслан Усачев 2009-04-15 10:39:58 (#845613)

[JFWRus] Re[2]: функцияFindGraphic

> Функция ищет графические изображения (иконки)
> в указанном окне. Если находит - помещает на него Jaws-курсор.
> Изображению должна быть присвоена тектстовая метка,
> которая, собственно говоря, ищется.
> Возвращает 1 при успешном завершении, иначе - 0.
> Параметры:
> 1 - дескриптор окна, в котором производится поиск.
> 2 - строка, представляющая текстовую метку.
> Должно быть обеспечено точное совпадение.
> 3 - целое, кодирующее направление поиска
> (S_TOP или S_BOTTOM)
> 4 - целое, кодирующее ограничения зоны поиска
> (S_UNRESTRICTED для поиска по всему окну активного приложения,
> S_RESTRICTED для ограничения поиска активным дочерним окном)

делаю такой тестовый скрипт сажу его на гарячие клавиши:
;дескриптор 525576

Script test ()
FindGraphic (525576, MyMetka, S_TOP, S_UNRESTRICTED)
LeftMouseButton ()

EndScript

припопытке скомпилировать ругаеться на "MyMetka" в чём может быть загвоздка.
и подскажите что это > 3 - целое, кодирующее направление поиска
> (S_TOP или S_BOTTOM).

С уважением Алексанндр.
Днепропетровск
http://disciplina.at.ua
тел: +38 (068) 40-42-995

***
Это сообщение No 8521
было разослано для 474 участников дискуссионного листа
[JFWRus] Re[2]: функцияFindGraphic

   2009-04-15 10:04:44 (#845588)

[JFWRus] озвучивание чисел

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

***
Это сообщение No 8520
было разослано для 474 участников дискуссионного листа
[JFWRus] озвучивание чисел

   2009-04-15 08:57:18 (#845559)

[JFWRus] Re: функцияFindGraphic

Доброго времени суток, Литус Александр.

Из сообщения от 15.04.2009 6:06:

> вопрос по функции FindGraphic (, , , )
> какие параметры прописываються в даной функции.
> Да и если можно подробнее как с помощью её находить элементы
> управления и выполнять действия над ними.

Функция ищет графические изображения (иконки)
в указанном окне. Если находит - помещает на него Jaws-курсор.
Изображению должна быть присвоена тектстовая метка,
которая, собственно говоря, ищется.
Возвращает 1 при успешном завершении, иначе - 0.
Параметры:
1 - дескриптор окна, в котором производится поиск.
2 - строка, представляющая текстовую метку.
Должно быть обеспечено точное совпадение.
3 - целое, кодирующее направление поиска
(S_TOP или S_BOTTOM)
4 - целое, кодирующее ограничения зоны поиска
(S_UNRESTRICTED для поиска по всему окну активного приложения,
S_RESTRICTED для ограничения поиска активным дочерним окном)
Функция доступна начиная с версии Jaws 4.51.

Для выполнения действий с найденными элементами можно использовать
функции по работе с Jaws-курсором и мышью.
Применять можно, если не работают другие методы (imho).

С уважением, Руслан Усачев
RUsach***@t*****.by

***
Это сообщение No 8519
было разослано для 474 участников дискуссионного листа
[JFWRus] Re: функцияFindGraphic

   Руслан Усачев 2009-04-15 08:19:34 (#845551)

[JFWRus] функцияFindGraphic

Добрый день вопрос по функции FindGraphic (, , , ) какие параметры прописываються
в даной функции. Да и если можно подробнее как с помощью её находить элементы
управления и выполнять действия над ними.

С уважением Алексанндр.
Днепропетровск
http://disciplina.at.ua
тел: +38 (068) 40-42-995

***
Это сообщение No 8518
было разослано для 474 участников дискуссионного листа
[JFWRus] функцияFindGraphic

   2009-04-15 07:04:01 (#845531)