03. marts 2004 - 05:17Der er
8 kommentarer og 1 løsning
Bedre Undo funktion i TRichEdit
Hej!
Jeg har i en længere periode undret mig over om man virkelig kan lave en bedre Undo (Fortryd) funktion til en TRichEdit. Den eksisterende er faktisk ret dårlig, da den kun fortryder 1 sidst handling.
Hvis det er muligt, vil jeg meget gerne hvordan, da jeg virkelig skal bruge det.
På forhånd tak allesammen! Med Venlig Hilsen Armen L.A. EvoxSoft
Det letteste var nok at købe/hente en af det utal af TRichEdit varianter der findes på nettet.
Skal man bygge noget selv - er ingen ekspert, men - så må det være noget med en TStak, TRichEdit, TTimer og en hjemmegjort TUndo klasse der indeholder sidste handling (som via TTimeren kan være registrering af en længere sekvens af handlinger). Stakken, som indeholder TUndo's, kan poppes efter behov.
En TUndo skal kunne indeholde sidst skrevne/slettede samt formattering og lignende. Den skal faktisk indeholde en del.
Nu er ballet åbnet med en kommentar om hvordan man evt. kan gøre det. Der er sikkert andre. Jeg går selv i gang med at lege med det når der er tid (du kan give mig et job - så får du 7½+ timer om dagen ;-))
Jeg vil godt kigge på det, men har lige rejst mig fra sygeseng (hvorfor er vi mænd altid så syge når influenzaen rammer?) Tror ikke det er nogen lille opgave men det kan jo være at der er en nem løsning.
Jeg har skudt mig ind på hvad jeg mener er den rigtige løsning. Delphi er aldrig kommet videre end RichEdit v. 1 (riched32.dll). Resten af verdenen er nået til RichEdit v. 3 (riched20.dll - lidt ulogisk, men det hedder den) og den indeholder det du har brug for. Det letteste - og i længden billigste - er at købe en af de mange varianter der findes på nettet. Der er ikke grund til at opfinde den dybe tallerken mere end een gang.
På Torry m.fl. pløjer jeg p.t. siderne igennem efter den bedste implementering.
hrc: Jo det er jeg klar over, men jeg ønsker stadig og få en løsning uden brug af andre komponenter. Desuden har jeg heller ikke penge lige nu til at købe et nyt komponent :-(
Håber du har lyst til at hjælpe, da jeg virkelig vil blive glad for det :-)
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.