Hejsan... hur gör man en undo knapp... jag vill ha en knapp i en meny som ångrar de senaste inskrivna ordet/bokstaven i en textruta. Såg att det fanns ett exempel i tips&trix men det var lite väl avancerat tycker jag... finns det något enklare sätt? Det enklaste sättet är att skicka EM_UNDO till textrutan: Hej Igen Öhh, för mig funkar det inte. Det står "Stack out of space" eller nått liknande. Måste man inte ha en massa mer kod för att det ska funka? Jag klippte bort all kod i Change, men det funkade ändå inte, fast skit i det. Jag använder den andres kod. Jag tänkte bara använda din ifall det gick att Ångra ändringar fler gånger i rad, det skulle vara bra tycker jag! Finns en undobuffer för flera operationer i RichTextbox 2. Fast jag vet inte om det går att använda från vb.Undo
Tack på förhand
/DoRsalSv: Undo
'(General) (declarations) i formuläret
Private Const EM_UNDO = &HC7
Private Declare Function SendMessageLong Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
'Menyns klick event
Private Sub mnuUndo_Click()
SendMessageLong Text1.hwnd, EM_UNDO, 0&, 0&
End Sub
'Gör menyn klickbar
Private Sub Text1_Change()
cmdUndo.Enabled = True
End Sub
'Gör menyn ej klickbar
Private Sub Form_Load()
cmdUndo.Enabled = False
End SubSv: Undo
När jag läste din fråga var jag tvungen att testa
Private Sub Command1_Click()
Text1.SetFocus
SendKeys "^z" 'Ctrl + z
End Sub
Och ta me fae.... det funkar
Mvh
SvenSv: Undo
Eller elagantare
Private Sub Command1_Click()
Text1.SetFocus
SendKeys Chr$(26), True
End Sub
DSSv: Undo
(SvenPons grej alltså)
Tacksam för svar!
MvH Dan PerssonSv: Undo
MvH Dan "DaPe" PerssonSv: Undo