Работа с окнами (2)

(По материалам Freedom Scientific Developer Network)
Дата публикации:2005
Twitter Facebook Vkontakte

Продолжение описания встроенных функций языка сценариев JAWS для работы с окнами приложений.

Функция GetFocusRect

Описание: Возвращает координаты прямоугольной области фокуса ввода.

Возвращаемое значение: Int, TRUE в случае успешного завершения.

Параметр 1:

Handle, дескриптор окна, содержащего прямоугольную область фокуса ввода. Этот параметр является обязательным.

Параметр 2:

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

Параметр 3:

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

Параметр 4:

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

Параметр 5:

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

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetFocusRectBottom

Описание: Возвращает координату нижней стороны прямоугольной области фокуса.

Возвращаемое значение: Int, экранная координата нижней стороны прямоугольной области фокуса.

Параметр 1:

handle, дескриптор окна, содержащего прямоугольную область фокуса. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetFocusRectLeft

Описание: Возвращает координату левой стороны прямоугольной области фокуса.

Возвращаемое значение: Int, экранная координата левой стороны прямоугольной области фокуса.

Параметр 1:

handle, дескриптор окна, содержащего прямоугольную область фокуса. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetFocusRectRight

Описание: Возвращает координату правой стороны прямоугольной области фокуса.

Возвращаемое значение: Int, экранная координата правой стороны прямоугольной области фокуса.

>

Параметр 1:

handle, дескриптор окна, содержащего прямоугольную область фокуса. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetFocusRectTop

Описание: Возвращает координату верхней стороны прямоугольной области фокуса.

Возвращаемое значение: Intэкранная координата верхней стороны прямоугольной области фокуса.

Параметр 1:

handle, дескриптор окна, содержащего прямоугольную область фокуса. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetForegroundWindow

Описание: Возвращает дескриптор окна, которое в данный момент находится на переднем плане. Обычно это бывает главное окно активного приложения, но может быть и диалоговое окно. Эта функция работает немного быстрее, чем функция GetAppMainWindow.

Возвращаемое значение: Handle, дескриптор окна, которое находится на переднем плане (то есть поверх всех остальных окон).

Параметры: отсутствуют

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetHHTaskBarWnd

Описание: Используйте эту функцию, чтобы получить дескриптор окна с классом HHTaskBar. Это будет одно из таких окон.

Возвращаемое значение: Handle, дескриптор окна с классом HHTaskBar; в случае ошибки возвращается ноль.

Параметры: отсутствуют

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних

Функция GetItemRect

Описание: возвращает координаты ограничительного прямоугольника, окружающего указанный элемент или элементы. Элементы могут быть объединены при помощи поразрядного (|) оператора. Когда объединены два или более элемента, результирующий прямоугольник включает все элементы.

Возвращаемое значение: Int, TRUE, если координаты ограничивающего прямоугольника были успешно определены.

Параметр 1:

Int,X-координата точки, где будет производиться поиск прямоугольной области. Если nX и nY равны 0, то будет найдена прямоугольная область текущего элемента. Этот параметр является обязательным.

Параметр 2:

Int, Y-координата точки, где будет производиться поиск прямоугольной области. Если nX и nY равны 0, то будет найдена прямоугольная область текущего элемента. Этот параметр является обязательным.

Параметр 3:

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

Параметр 4:

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

Параметр 5:

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

Параметр 6:

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

Параметр 7:

Int, тип элемента. Может быть: IT_CHUNK, IT_WORD, IT_CHAR, IT_FIELD, IT_COLORFIELD, IT_PROMPT, IT_CARET, IT_BOUNDINGRECT, IT_MAGNIFIED, IT_liNE, IT_PRIOR_WORD, IT_NEXT_WORD или IT_HIGHliGHT. Типы элементов могут быть скомбинированы при помощи битового оператора (|). Например, если вы хотите получить прямоугольную область, ограничивающую поле редактирования и подсказку (метку) рядом с ним, то используйте: IT_BOUNDINGRECT | IT_PROMPT. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetLastWindow

Описание: Возвращает дескриптор последнего окна, расположенного на том же логическом уровне в иерархии окон, что и окно, дескриптор которого передан в качестве параметра. Это используется для того, чтобы получить конечную точку в последовательности окон.

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

Параметр 1:

Handle, дескриптор окна, принимаемого как исходное. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. JAWS 5.10 и более поздних
  2. PAC Mate 2.01 и более поздних

Функция GetNavModuleVersionInfo

Описание: Возвращает информацию о nav module responsible для окна, дескриптор которого передан в качестве параметра.

Возвращаемое значение: String, строковое описание nav module указанного окна.

Параметр 1:

Handle, дескриптор интересующего окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. JAWS 5.00 и более поздних

Функция GetNextWindow

Описание: Возвращает дескриптор окна, следующего в последовательности окон одного логического уровня. Используется для перемещения по списку дескрипторов окон.

Возвращаемое значение: Handle, дескриптор следующего окна с стеке окон или 0, если окно не было найдено.

Параметр 1:

Handle, дескриптор исходного окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetOwner

Описание: отсутствует.

Возвращаемое значение: Handle, описание отсутствует.

Параметр 1:

Handle, описание отсутствует. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних

Функция GetParent

Описание: Возвращает дескриптор родительского (порождающего) окна для указанного дочернего окна. Например, когда появляется диалог, этой функцией можно воспользоваться, чтобы получить дескриптор окна, создавшего этот диалог. Функцию можно использовать для перемещения вверх в иерархии окон, чтобы добраться до конкретного окна.

Возвращаемое значение: Handle, дескриптор родительского окна.

Параметр 1:

Handle, дескриптор исходного окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetPriorWindow

Описание: Возвращает дескриптор окна, предшествующего в последовательности окон одного логического уровня. Используется для перемещения по иерархии окон.

Возвращаемое значение: Handle, дескриптор предыдущего окна в стеке окон или 0, если окно не было найдено.

Параметр 1:

Handle, дескриптор исходного окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetRealWindow

Описание: Просматривает список дескрипторов окон в поисках "реального окна" (Real Window). Реальным называется окно, у которого есть заголовок.

Возвращаемое значение: Handle, дескриптор реального окна.

Параметр 1:

Handle, дескриптор исходного окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetTextInFocusRects

Описание: возвращает содержимое всех прямоугольных фокусов в единый буфер.

Возвращаемое значение: String, содержимое прямоугольных фокусов.

Параметр 1:

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

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetTextInRect

Описание: Возвращает текст, находящийся внутри прямоугольника, задаваемого четырьмя экранными координатами: левая, правая, верхняя и нижняя стороны.

Возвращаемое значение: String, текст внутри прямоугольной области.

Параметр 1:

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

Параметр 2:

Int, координата верхней стороны прямоугольной области. Этот параметр является обязательным.

Параметр 3:

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

Параметр 4:

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

Параметр 5:

Int, атрибуты текста, по которым текст будет отобран. 0 - будет отобран весь текст. Можно использовать комбинацию атрибутов, чтобы получить текст с нужными атрибутами. Этот параметр не является обязательным.

Параметр 6:

Int, цвет текста, по которому будет отобран текст. Используйте константу IgnoreColor, чтобы получить текст любого цвета. Этот параметр не является обязательным.

Параметр 7:

Int, цвет фона, по которому будет отобран текст. Этот параметр не является обязательным.

Параметр 8:

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

Параметр 9:

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

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetTopLevelWindow

Описание: Эта функция похожа на функцию GetAppMainWindow. Однако есть отличие в том, что функция GetAppMainWindow всегда должна возвращать дескриптор главного окна приложения. В противоположность этому, функция GetTopLevelWindow может быть использована применительно к диалоговому окну и возвратит дескриптор главного диалогового окна, тогда как могут быть ещё несколько дочерних окон, выступающих в качестве реальных окон. Это может быть полезно, если функция GetRealWindow не возвращает дескриптор окна главного диалога. Реальное окно - это окно с заголовком.

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

Параметр 1:

Handle, дескриптор исходного окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Пример

Данный пример показывает различие в работе функций GetTopLevelWindow и GetAppMainWindow. С помощью Диспетчера скриптов поместите этот скрипт в файл скриптов для редактора Блокнот (notepad.jss) и откомпилируйте его. При вызове этого скрипта JAWS произнесёт дескриптор и заголовок окна, которое возвратит функция GetAppMainWindow, а затем - дескриптор и заголовок окна, которое возвратит функция GetTopLevelWindow. Если вы вызовите скрипт, находясь в главном окне Блокнота, то дескрипторы и заголовки окон будут идентичны. Теперь откройте меню Файл, пункт Открыть. Появится диалоговое окно открытия файла. Теперь, если вызвать скрипт, то можно убедиться, что возвращаемые значения будут отличны друг от друга. Функция GetTopLevelWindow возвратит дескриптор окна диалога открытия файла, а функция GetAppMainWindow возвратит дескриптор главного окна Блокнота.

Script TopLevelAndAppWindows ()
Var
Handle hWnd,
Handle appWin,
Handle topWin
let hWnd = GetCurrentWindow ()
;получаем дескриптор главного окна приложения
let appWin = GetAppMainWindow (hWnd)
;получаем дескриптор окна верхнего уровня
let topWin = GetTopLevelWindow (hWnd)
;озвучиваем результат
SayString ("GetAppMainWindow возвратила "+IntToString (appWin) + ". Заголовок окна: " + GetWindowName (appWin))
SayString ("GetTopLevelWindow возвратила "+IntToString (topWin) + ". Заголовок окна: " + GetWindowName (topWin))
EndScript

Функция GetWindowAtPoint

Описание: Возвращает дескриптор окна, расположенного в указанной точке. Например, эта функция может быть использована в событийной функции MouseMovedEvent, чтобы получить дескриптор окна, в котором находится указатель мыши.

Возвращаемое значение: Handle, дескриптор окна, расположенного в точке с координатами x и y. Если возвращен 0, то окно не было найдено.

Параметр 1:

Int, горизонтальная (X) координата точки. Этот параметр является обязательным.

Параметр 2:

Int, вертикальная (Y) координата точки. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних

Функция GetWindowBottom

Описание: Возвращает координату нижней стороны указанного окна. Координата определяется по отношению ко всему экрану.

Возвращаемое значение: Int, координата нижней стороны окна.

Параметр 1:

handle, дескриптор интересующего окна. Этот параметр является обязательным.

Эта функция доступна в следующих версиях:

  1. PAC Mate 1.10 и более поздних
  2. JAWS 4.51 и более поздних


Распространение материалов сайта означает, что распространитель принял условия лицензионного соглашения.
Идея и реализация: © Владимир Довыденков и Анатолий Камынин,  2004-2019