怎样实现“撤消”功能

wangsanxia 2003-06-07 09:32:11
我是个初学者,在编记事本和画图。不知道在这两个程序中怎样分别实现菜单中“撤消”选项的功能,允许用户撤消上次的操作。
...全文
59 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
lwzlemon 2003-06-08
  • 打赏
  • 举报
回复
mark
wangsanxia 2003-06-08
  • 打赏
  • 举报
回复
在记事本程序中,发送发送wm_undo消息会将所有的字符消除,而且莫名其妙的出现字符0,我想每次撤消只清楚上次的操作。
bydisplay 2003-06-07
  • 打赏
  • 举报
回复
Declare Function SendMessage Lib"user"(ByVal hWnd As Integer,ByVal wMsg As Integer,wParam As Integer,lparam As Any) As Long
Global Const WM_USER=&h400
Global Const EM_UNDO=WM_USER+23
UndoResult=SendMessage(myControl.hWnd,EM_UNDO,0,0)
hisofty 2003-06-07
  • 打赏
  • 举报
回复
可以直接发送wm_undo消息
chenke_ikari 2003-06-07
  • 打赏
  • 举报
回复
Private Sub CmdUndo_Click()
Select Case CurrentTextBox
Case "TxtCompany":
TxtCompany(CurrentLine).SetFocus
SendKeys Chr(27) '发送"撤销"命令到当前输入框
Case "TxtProducer":
TxtProducer(CurrentLine).SetFocus
SendKeys Chr(27)
Case "TxtProduct":
TxtProduct(CurrentLine).SetFocus
SendKeys Chr(27)
Case "TxtModel":
TxtModel(CurrentLine).SetFocus
SendKeys Chr(27)
Case "TxtPrice":
TxtPrice(CurrentLine).SetFocus
SendKeys Chr(27)
Case "TxtTime":
TxtTime(CurrentLine).SetFocus
SendKeys Chr(27)
Case "TxtComment":
TxtComment(CurrentLine).SetFocus
SendKeys Chr(27)
End Select
End Sub

SendKeys Chr(27)即Windows中的Ctrl+Z
wangsanxia 2003-06-07
  • 打赏
  • 举报
回复
RichTextBox中没有Undo方法啊
lhxtx 2003-06-07
  • 打赏
  • 举报
回复
RichTextBox.Undo

7,762

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧