_WPosCursorP( ) API Library Routine
Positions the output position of the specified window at the location specified in pixels by pt.
void _WPosCursorP(WHANDLE wh, Point pt)
WHANDLE wh; /* Window handle. */
Point pt; /* Location for output position. */
Remarks
_WPosCursor( ) doesn't make the insertion point appear. Normally, the insertion point is visible only when Visual FoxPro is waiting for input.
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
SET LIBRARY TO WPOSCURP
C 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
};
See Also
Reference
_WGetCursorP( ) API Library Routine
_WPosCursor( ) API Library Routine
_WPutChr( ) API Library Routine
_WPutStr( ) API Library Routine