Прокручивает часть содержимого окна влево или вправо, а также вверх или вниз.
void _WScroll(WHANDLE wh, Rect r, int dv, int dh) WHANDLE wh; /* Дескриптор окна. */ Rect r; /* Прокручиваемая область. */ int dv; /* Влево или вправо. */ int dh; /* Вверх или вниз. */ |
Примечания
-
Параметр r описывает область в окне, которую следует прокручивать.
-
Параметр dv задает число символов, на которое окно прокручивается влево или вправо. Если значение dv отрицательно, содержимое окна прокручивается влево. Если dv положительно, содержимое окна прокручивается вправо.
-
Параметр dh задает число символов, на которое окно прокручивается вверх или вниз. Если значение dh отрицательно, содержимое окна прокручивается вверх. Если dh положительно, содержимое окна прокручивается вниз.
Если оба значения dv и dh равны 0, _WScroll( ) стирает символы, находящиеся внутри заданного прямоугольника.
Для получения дополнительной информации о том, как создавать библиотеку API и интегрировать её в Visual FoxPro, смотрите Доступ к API Visual FoxPro.
Пример
В следующем примере открывается окно и в нем рисуется прямоугольный узор из букв X. Этот прямоугольник также служит прокручиваемой областью. Сначала прямоугольник прокручивается на две позиции вверх и на две позиции влево. Затем он прокручивается на четыре позиции вниз и на четыре позиции вправо.
Код Visual FoxPro
![]() | |
---|---|
SET LIBRARY TO WSCROLL |
Код C
![]() | |
---|---|
#include <pro_ext.h> FAR WScrollEx(ParamBlk FAR *parm) { WHANDLE wh; Point pos; Rect rect; wh = _WOpen(2,2,20,70,WEVENT | CLOSE,WINDOW_SCHEME,(Scheme FAR *) 0, WO_SYSTEMBORDER); _WShow(wh); rect.top = 6; rect.left = 6; rect.bottom = 12; rect.right = 12; for (pos.v = rect.top; pos.v < rect.bottom; pos.v++) { for (pos.h = rect.left; pos.h < rect.right; pos.h++) { _WPosCursor(wh, pos); _WPutChr(wh, 'X'); } } _Execute("WAIT WINDOW 'Press any key to _WScroll(wh,rect,-2,-2)'"); _WScroll(wh, rect, -2, -2); _Execute("WAIT WINDOW 'Press any key to _WScroll(wh,rect,+4,+4)'"); _WScroll(wh, rect, +4, +4); } FoxInfo myFoxInfo[] = { {"ONLOAD", (FPFI) WScrollEx, 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.