明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 2748|回复: 4

在VBA中怎么执行undo命令

[复制链接]
发表于 2003-1-7 09:51:00 | 显示全部楼层 |阅读模式
再程序开始的时候我想执行 undo begin
程序结束的时候执行 undo end
部知道怎么用vba实现?
发表于 2003-1-7 10:29:00 | 显示全部楼层

Re: 在VBA中怎么执行undo命令

Sub Example_StartUndoMark()
    ' 这个例子演示了创建一系列的直线,每根直线都设置了取消标记。当所有直线创建完成后,可以运行命令“Undo”来单独取消一根直线。如果没有设置取消标记,则命令“Undo”将取消所有的直线。   
    Dim line As AcadLine
    Dim stPnt(0 To 2) As Double

    Dim endPnt(0 To 2) As Double
    stPnt(0) = 1: stPnt(1) = 2: stPnt(2) = 0
    endPnt(0) = 2: stPnt(1) = 1: stPnt(2) = 0
   
    ' 创建直线
    Dim j As Integer
    For j = 0 To 3
        ThisDrawing.StartUndoMark
        Set line = ThisDrawing.ModelSpace.AddLine(stPnt, endPnt)
        stPnt(0) = stPnt(0) + 3

        endPnt(0) = endPnt(0) + 3
        ThisDrawing.EndUndoMark
    Next
    ZoomAll
   
End Sub
 楼主| 发表于 2003-1-7 17:14:00 | 显示全部楼层

但是如何运行undo

 楼主| 发表于 2003-1-7 17:26:00 | 显示全部楼层

但是如何运行undo命令呢?

我是想在程序开始和结尾设置标志,一旦程序运行过程中,出现错误
直接跳转到错误处理程序,让后一个undo命令,把图形恢复到没有运行
出程序之前的样子,这个undo命令怎么运行,除了用SendCommand方法
在VBA中还有其它的方法没有。
发表于 2003-1-7 18:18:00 | 显示全部楼层

还有SendKeys,但和SendCommand的原理一样。

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-11-28 20:58 , Processed in 0.162365 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表