Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Führt die Änderung, die an der Datei im angegebenen Bearbeitungsfenster vorgenommen und durch den letzten Aufruf von _EdUndo( ) rückgängig gemacht wurde, erneut aus.
void _EdRedo(WHANDLE wh)
WHANDLE wh; /* Handle of editing window. */
Beispiel
Im folgenden Beispiel wird eine durch einen Parameter angegebene Datei zum Bearbeiten geöffnet. Nach dem Einfügen einer neuen Zeile wird diese Zeile mit _EdUndo( ) wieder entfernt und anschließend mit _EdRedo( ) erneut eingefügt.
Visual FoxPro-Code
SET LIBRARY TO EDREDO
= EDREDO("x")
C-Code
#include <pro_ext.h>
FAR Example(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"
}
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);
_EdSetPos(wh, _EdGetLinePos(wh, 13));
_EdInsert(wh, "Hello, world\n", _StrLen("Hello, world\n"));
_Execute("WAIT WINDOW 'New line inserted. Press any key to undo.'");
_EdUndo(wh);
_Execute("WAIT WINDOW 'Insertion undone. Press any key to redo.'");
_EdRedo(wh);
}
FoxInfo myFoxInfo[] = {
{"EDREDO", (FPFI) Example, 1, "C"},
};
FoxTable _FoxTable = {
(FoxTable FAR *) 0, sizeof(myFoxInfo)/sizeof(FoxInfo), myFoxInfo
};
Siehe auch
_EdUndo( ), API-Bibliotheksroutine | _EdUndoOn( ), API-Bibliotheksroutine | _EdRevert( ), API-Bibliotheksroutine