Создает новое окно с координатами, заданными параметрами top, left, bottom, и right.
WHANDLE _WOpen(int top, int left, int bottom, int right, int flag, int scheme_num, Scheme FAR *scheme, char FAR *bord) int top; /* Строка с верхней координатой. */ int left; /* Столбец с левой координатой. */ int bottom; /* Строка с нижней координатой. */ int right; /* Столбец с правой координатой. */ int flag; /* Атрибуты. */ int scheme_num; /* Цветовая схема. */ Scheme FAR *scheme; /* Указатель используемой цветовой схемы. */ char FAR *bord; /* Тип обрамления. */ |
Примечания
Координаты окна могут определять позицию вне экрана,но высота не может превышать 120, а ширина 264. Для хранения внеэкранного изображения такого окна выделяется дополнительная память.
Параметр flag определяет атрибуты для данного окна. В flag можно задать одно или несколько значений. Вы можете комбинировать их значение с помощью операторов | или + языка C. Типичные виды обрамления окна определены в файле PRO_EXT.H.
Значение flag | Атрибут окна |
---|---|
WCURSOR |
В данном окне можно отображать курсор. |
ZOOM |
Пользователь может увеличивать окно. |
ADJ |
Пользователь может регулировать размер окна. |
CLOSE |
Пользователь может закрывать окно. |
MOVE |
Пользователь может перемещать окно. |
AUTOSCROLL |
Содержимое окна прокручивается, когда вывод переходит за последнюю строку. |
WEVENT |
Окно принимает, активизирует и деактивизирует события. |
SHADOW |
Окно образует затенение. |
WMODAL |
Пользователь не может перевести это окно на задний план. |
WMINIMIZE |
Пользователь может сворачивать данное окно. |
В качестве scheme_num m можно задать любой допустимый номер цветовой схемы или - 1 чтобы указать, что параметр scheme задает цветовую схему, которую надлежит использовать.
Для получения дополнительной информации о том, как создавать библиотеку API и интегрировать её в Visual FoxPro, смотрите Доступ к API Visual FoxPro.
Пример
В следующем примере создаются окна, использующие различные цветовые схемы и обрамления. В частности, обратите внимание на цветовую схему custom.
Код Visual FoxPro
![]() | |
---|---|
SET LIBRARY TO WOPEN |
Код C
![]() | |
---|---|
#include <pro_ext.h> FAR Example(ParamBlk FAR *parm) { WHANDLE wh; Scheme customScheme = { (char) (BLACK_ON | WHITE), (char) (RED_ON | BLACK | BLINK), (char) (WHITE_ON | WHITE | BRIGHT), (char) (CYAN_ON | BLUE | BRIGHT), (char) (GREEN_ON | BROWN), (char) (BROWN_ON | BROWN | BRIGHT), (char) (MAGENTA_ON | MAGENTA | BRIGHT), (char) (RED_ON | MAGENTA | BRIGHT | BLINK), (char) (BROWN_ON | GREEN | BRIGHT), (char) (BLACK_ON | CYAN), (char) (BLUE_ON | CYAN), }; _Execute("WAIT WINDOW 'Press any key to see a window \ in WINDOW_SCHEME with WO_DOUBLEBOX border'"); wh = _WOpen(2,2,20,70,WEVENT | CLOSE,WINDOW_SCHEME,(Scheme FAR *) 0, WO_DOUBLEBOX); _WShow(wh); _Execute("WAIT WINDOW 'Press any key to see a window \ in ALERT_SCHEME with WO_SINGLEBOX border'"); _WClose(wh); wh = _WOpen(2,2,20,70,WEVENT | CLOSE,ALERT_SCHEME, (Scheme FAR *) 0, WO_SINGLEBOX); _WShow(wh); _Execute("WAIT WINDOW 'Press any key to see a window \ in WINDOW_SCHEME with WO_PANELBORDER border'"); _WClose(wh); wh = _WOpen(2,2,20,70,WEVENT | CLOSE,WINDOW_SCHEME,(Scheme FAR *) 0, WO_PANELBORDER); _WShow(wh); _Execute("WAIT WINDOW 'Press any key to see a window \ in a custom scheme with WO_SYSTEMBORDER border'"); _WClose(wh); wh = _WOpen(2,2,20,70,WEVENT | CLOSE,-1,(Scheme FAR *) customScheme, WO_SYSTEMBORDER); _WShow(wh); FoxInfo myFoxInfo[] = { {"ONLOAD", (FPFI) Example, CALLONLOAD, ""}, }; FoxTable _FoxTable = { (FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo }; |
Смотрите также

c Microsoft Corporation. All rights reserved. Microsoft is not reponsible for the contents of the translated help topics.