Jeg har nu i lang tid forgæves forsøgt selv at tilføje undoevents til mit Synedit. For hvis mit program indsætter en given tekst i editen eller ændrer på det, bliver det ikke registreret som en hændelse og bliver dermed ikke undo-bart (man kan ikke undo'e det). mysynedit.undolist.addchange() er proceduren for at tilføje en hændelse hvis jeg ikke tager meget fejl, men jeg kan ikke få det til at virke. Mit største problem ligger i at forstå de to point()'s der indgår som parametre.
Jeg er interesseret i at få hjælp til hvordan jeg får det til at virke og eventuelt et kodeeksempel.
Kan du ikke bare selv lave en array der indeholder aendringerne i din SynEdit? Din array kunne eventuelt bestaa af postion og teksten der er aendret:
type TUndoText = record X : Integer; //Position i din SynEdit S : String; //Teksten P : Pointer; //Hvis der er flere tekst felte i din applikation, kunne en pointer til givene SynEdit vaere meget reelevant end; var UndoList : array of TUndoText; begin ... end;
Har skam overvejet at løse det på den måde, men i nogle tilfælde er den indbyggede undo-feature langt bedre. derfor vil jeg hellere bygge videre på den.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.