_EdSkipLines( ) (Rutina de biblioteca API)
Mueve el punto de inserción al principio de la línea int desde la posición de desplazamiento actual, thePos.
EDPOS _EdSkipLines(WHANDLE wh, EDPOS thePos, int offset)
WHANDLE wh; /* Handle of editing window. */
EDPOS thePos; /* Current offset position. */
int offset; /* Number of lines to skip. */
Observaciones
Puede especificar números de línea positivos o negativos.
Para obtener más información acerca de cómo crear una biblioteca API e integrarla con Visual FoxPro, vea Acceso a la API de Visual FoxPro.
Ejemplo
El siguiente ejemplo abre un archivo especificado por un parámetro para su modificación. Utiliza _EdSkipLines( ) para encontrar las posiciones de desplazamiento y luego selecciona las líneas 3 y 4.
Código Visual FoxPro
SET LIBRARY TO EDSKIPLI
= SKIPLINE("x")
Código C
#include <pro_ext.h>
FAR Example(ParamBlk FAR *parm)
{
#define pFILENAME ((char FAR *) _HandToPtr(parm->p[0].val.ev_handle))
WHANDLE wh;
EDPOS edpos;
if (!_SetHandSize(parm->p[0].val.ev_handle,
parm->p[0].val.ev_length+1))
{
_Error(182); // "Insufficient memory"
}
pFILENAME[parm->p[0].val.ev_length] = '\0';
_HLock(parm->p[0].val.ev_handle);
wh = _EdOpenFile(pFILENAME, FO_READWRITE);
_HUnLock(parm->p[0].val.ev_handle);
// select next two lines
edpos = _EdSkipLines(wh, 0, 2); // skip to two lines from top
_EdSelect(wh, edpos, _EdSkipLines(wh, edpos, 2));
_Execute("WAIT WINDOW 'Using _EdSkipLines() \
to select lines 3 and 4'");
}
FoxInfo myFoxInfo[] = {
{"SKIPLINE", (FPFI) Example, 1, "C"},
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
Vea también
_EdGetPos( ) (Rutina de biblioteca API) |_EdSetPos( ) (Rutina de biblioteca API) | Acceso a la API de Visual FoxPro