На этом шаге мы рассмотрим доступ к различным видам окон.
Каждая выполняющаяся программа имеет окно Task. Дескриптор окна Task может быть получен вызовом предиката vpi_GetTaskWin.
TaskWinHandle=vpi_GetTaskWin()
Каждое окно, кроме окна Screen, имеет родителя. Дескриптор родительского окна данного окна может быть получен вызовом win_GetParent.
win_GetParent(ChildWindow)
Активное (приоритетное) окно является окном верхнего уровня или окном Task, которое или имеет фокус, или содержит элемент управления, или дочернее окно, которое имеет фокус. Дескриптор активного окна может быть получен при вызове следующего предиката:
Window=win_GetActiveWindow()
В любой момент времени только один элемент управления или окно имеет фокус ввода. Изменить фокус пользователь может, щелкнув по другому элементу управления. Изменить фокус может и приложение вызовом предиката:
win_SetFocus(NewWindow)
Вызов следующего предиката позволяет получить дескриптор окна, имеющего фокус ввода:
Window=win_GetFocus()
Этот предикат также используется для определения того, какой элемент управления имеет фокус в данный момент.
На следующем шаге мы рассмотрим упорядочивание и обновление окон.