Private Const WM_UNDO = &H304 Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As LongPrivate Sub Command1_Click() SendMessage Text1.hwnd, WM_UNDO, 1, vbNullString End Sub======= 不过只能撤消一次~~
哦。那一般软件里的多次UnDo和ReDo是怎么做?保存在数组里吗?有效率更高的方法吗?
//那一般软件里的多次UnDo和ReDo是怎么做?保存在数组里吗?有效率更高的方法吗?用数组
文本框的Ctrl+z就是撤消功能,你只要用SendKeys语句传递这组合键即可,如下: Private Sub Command1_Click() Text1.SetFocus SendKeys ("^Z") End Sub
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As LongPrivate Sub Command1_Click()
SendMessage Text1.hwnd, WM_UNDO, 1, vbNullString
End Sub=======
不过只能撤消一次~~
Private Sub Command1_Click()
Text1.SetFocus
SendKeys ("^Z")
End Sub