Freigeben über


_EdActive( ), API-Bibliotheksroutine

Ermöglicht Ihnen das Ausblenden (Deaktivieren) oder Anzeigen (Aktivieren) des Auswahlbereichs oder der Position der Einfügemarke im angegebenen Fenster.

void _EdActive(WHANDLE wh, int Show)
WHANDLE wh;            /* Handle of editing window.*/
int Show;                     /* Boolean hide or show selection. */

Hinweise

Wenn Sie den Parameter Show als Wahr angeben, wird der Auswahlbereich oder die Position der Einfügemarke angezeigt. Geben Sie für Show Falsch an, wird der Auswahlbereich oder die Position der Einfügemarke ausgeblendet.

Weitere Informationen zum Erstellen einer API-Bibliothek und ihrer Integration in Visual FoxPro finden Sie unter Zugreifen auf die Visual FoxPro-API.

Beispiel

Im folgenden Beispiel wird ein Bearbeitungsfenster für eine Datei geöffnet, deren Name als Parameter übergeben wird. Das erste Zeichen in der Datei wird ausgewählt. Mit _EdActive( ) wird die Auswahl im Beispiel aktiviert und anschließend deaktiviert.

Visual FoxPro-Code

SET LIBRARY TO EDACTIVE
fc = FCREATE("x", 0)
FOR i = 1 TO 90
   = FPUTS(fc, REPL(ALLT(STR(i)), i), i)
ENDFOR
= FCLOSE(fc)

= EDACTIVE("x")   && Call our API routine

C-Code

#include <pro_ext.h>

FAR EdActiveEx(ParamBlk FAR *parm)
{
#define pFILENAME ((char FAR *) _HandToPtr(parm->p[0].val.ev_handle))

   WHANDLE wh;

   if (!_SetHandSize(parm->p[0].val.ev_handle,
      parm->p[0].val.ev_length+1))
   {
      _Error(182); // "Insufficient memory"
   }
   _HLock(parm->p[0].val.ev_handle);
   pFILENAME[parm->p[0].val.ev_length] = '\0';
   wh = _EdOpenFile(pFILENAME, FO_READONLY);
   _HUnLock(parm->p[0].val.ev_handle);

   _EdSelect(wh, 0, 1);

   _EdActive(wh, TRUE);
   _Execute("WAIT WINDOW 'Selection active'");

   _EdActive(wh, FALSE);
   _Execute("WAIT WINDOW 'Selection inactive'");
}

FoxInfo myFoxInfo[] = {
   {"EDACTIVE", (FPFI) EdActiveEx, 1, "C"},
};
FoxTable _FoxTable = {
   (FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};

Siehe auch

_EdSelect( ), API-Bibliotheksroutine | _EdCloseFile( ), API-Bibliotheksroutine | SYS(2002) - Einfügemarke aktivieren/deaktivieren | _EdCopy( ), API-Bibliotheksroutine