Returns in pixels the current output position in the specified window.
Point _WGetCursorP(WHANDLE wh) WHANDLE wh; /* Window handle. */ |
Remarks
For more information on how to create an API library and integrate it with Visual FoxPro, see Accessing the Visual FoxPro API.
Example
The following example creates a window and draws a diagonal pattern of Xs in this window. It positions the cursor before writing each X using _WPosCursorP(В ), and gets that same position using _WGetCursorP(В ).
Visual FoxPro Code
В | Copy Code |
---|---|
SET LIBRARY TO WGETCURP |
C Code
В | Copy Code |
---|---|
#include <pro_ext.h> void putLong(long n, int width) { Value val; val.ev_type = 'I'; val.ev_long = n; val.ev_width = width; _PutValue(&val); } FAR Example(ParamBlk FAR *parm) { WHANDLE wh; Point putPos, getPos; wh = _WOpen(4,4,20,70,0,WINDOW_SCHEME,(Scheme FAR *)0, WO_SYSTEMBORDER); _WShow(wh); for (putPos.v = 10; putPos.v < 100; putPos.v += 10) { putPos.h = putPos.v; _WPosCursorP(wh, putPos); _WPutChr(wh, 'X'); getPos = _WGetCursorP(wh); _PutStr("\nCursor position:"); putLong(getPos.v, 5); putLong(getPos.h, 5); _Execute("WAIT"); } _WClose(wh); } FoxInfo myFoxInfo[] = { {"ONLOAD", Example, CALLONLOAD, ""}, }; FoxTable _FoxTable = { (FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo }; |