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

ACTIVATE WINDOW WindowName1 [, WindowName2 ...]
| ALL [IN [WINDOW] WindowName3 | IN SCREEN
[BOTTOM | TOP | SAME] [NOSHOW]

Параметры

WindowName1[, WindowName2...]

Определяет имя активируемого окна. Несколько имен окон должны разделяться запятой. Кроме этого Вы можете активировать также построенные ранее Toolbar-ы. В разделе описания команды SHOW WINDOW описаны имена системных ToolBar-ов Visual FoxPro. 
ALL

Определяет активацию всех окон. Последнее окно будет являться текущим окном для вывода результатов.
IN [WINDOW] WindowName3

Определяет имя родительского окна, в котором будет размещено и активировано окно. В этом случае активируемое окно будет чвляться дочерним окном (к указанному - родительскому). Родительское окно может иметь несколько дочерних окон. Дочернее окно не может быть перенесено за пределы родительского окна. Если родительское окно переносится, то все дочерние окна переносятся вместе с ним. 
Примечание:
 Родительское окно должно быть видимым для активации любого своего дочернего окна. 

IN SCREEN

Размещает активируемое окно в главном окне Visual FoxPro window. Создаваемое окно может быть размещено в конкретном родительском окне если в команде DEFINE WINDOW указать опциюIN WINDOW. Указание опции IN SCREEN в команде  ACTIVATE WINDOW имеет больший приоритет чем опция IN WINDOW в команде DEFINE WINDOW.
BOTTOM | TOP | SAME

Определяет, как данное, активируемое окно соотносится с последним активируемым окном. По-умолчанию, окно активируется на самом переднем плане. Опция BOTTOM указывает, что окно активируется на заднем плане. Опция TOP указывает, что окно активируется на переднем плане. Опция SAME указывает, что окно активируется без учета переднего-заднего плана расположения других окон.
NOSHOW

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

Комментарии

Чтобы успешно использовать данную команду необходимо создать пользовательское окно при помощи команды  DEFINE WINDOW .

Команда активизации размещает окно на переднем плане и переопределяет вывод информации в данное окно. Вывод информации может быть переопределен только в одно окно, в каждый момент выполнения программы. Весь вывод информации будет направлен в данное окно до тех пор, пока не будет активировыано другое окно пользователя или активировано главное окно Visual FoxPr, или данное окно будет стерто (Release).

Имена пользовательских окон размещаются в нижней части секции Window главного меню системы. Имя Текущего активного окна отмечено соответствующей галочкой.

В один момент времени в главном окне системы может быть расположено несколько пользовательских окон, но вывод информации направляется только в одно окно, которое было активировано последним. Когда открыто несколько пользовательских окон, и выполняется последовательная деактивация данных окон , вывод информации последовательно перенаправляется в следующие активные окна. Если активных окон эже нет, то вывод направляется в главное окно Visual FoxPro.

Примечание:
Для перенаправления вывода информации в конкретное пользовательское окно Вам необходимо явно выполнить команду активации данного окна  ACTIVATE WINDOW.

Все активные и отображенные окна могут быть деактивированы или спрятаны соответствующими командами DEACTIVATE WINDOW или HIDE WINDOW. Данные команды только убирают изображения окон с экрана, ео не удаляют их из памяти. Эти окна могут быть восстановлены соответствующими командами ACTIVATE WINDOW или SHOW WINDOW.

Для удаления окон из памяти необходимо выполнить команды CLEAR WINDOWS, RELEASE WINDOWS, или CLEAR ALL. Для восстановления стертого из памяти окна его нужно переопределить заново. 

Вы можете использовать команду ACTIVATE WINDOW  для размещения на главном экране системные окна Visual FoxPro

Но следующие окна не могут быть активированы с помощью команды ACTIVATE WINDOW:

  • Command

  • Call Stack

  • Debug

  • Debug Output

  • Document View

  • Locals

  • Trace

  • Watch

  • View

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

  Копировать код
ACTIVATE WINDOW "Call Stack"

Исторически, в младших версиях Visual FoxPro, окно Data Session всегда отождествлялось с окном View. К тому же,  соответствующие команды HIDE WINDOW, ACTIVATE WINDOW, WONTOP( ),  также управляют данным окном  View. Система Visual FoxPro продолжает поддерживать управление окна View при помощи команды ACTIVATE WINDOW.

Используйте команды HIDE WINDOW или RELEASE WINDOW для удаления системных окон из главного окна Visual FoxPro или другого родительского окна.

Пример

В представленном примере создается окно с именем output , активируется, за тем - скрывается, за тем - показывается вновь, и наконец - стирается. Команда WAIT обеспечивает пошаговое выполнение перечисленных действий. 

  Копировать код
CLEAR
DEFINE WINDOW output FROM 2,1 TO 13,75 TITLE 'Output' ;
CLOSE FLOAT GROW ZOOM
ACTIVATE WINDOW output
WAIT WINDOW 'Press any key to hide window output'
HIDE WINDOW output
WAIT WINDOW 'Press any key to show window output'
SHOW WINDOW output
WAIT WINDOW 'Press any key to release window output'
RELEASE WINDOW output

См. также