本帖最后由 kele99kele 于 2015-7-30 23:01 编辑
在很多程序里可以看到,程序中含有如下代码:- (command "undo" "be")
- ……
- ……
- (command "undo" "e")
复制代码 用法是这样的,在你的程序中可能包含多组命令,多个动作,比如说你的程序功能是绘制一个洞口,实现步骤是先点取空白区域,计算围合线线型、洞口符号线的坐标,生成围合线,生成洞口符号,编组。
当你发现绘制的洞口不是你想要的位置或者点错了位置需要返回时,一般用U或者Ctrl+z来返回,你会发现先是取消了分组,然后取消了洞口符号,最后取消了围合线,这个是简单的例子,如果你的程序
实现的功能绘制了几十个不同的图形,你要取消的话就要用几十次返回,非常不方便,于是就用到了上面所写的命令组。
undo be是从下面开始你的命令将会编程一组,返回时讲直接返回undo be之前的状态
undo e是命令编组结束。
把这个代码加到你程序绘图开始的前面和绘图完毕之后,将你的所有自动操作命令做成一个命令组,这样当你取消上一个操作时会将编组的所有自动动作同时取消,只需要返回一
次即可。
一下是我摘自AutoCAD HELP 里关于UNDO命令的作用,可能更方便理解一些。
撤消命令的效果 [img][/img] 工具栏:标准 [img][/img]
[img][/img] 命令条目:undo
UNDO 在命令提示下显示命令或系统变量名,从而指出已撤消使用该命令的位置。
注意UNDO 对一些命令和系统变量无效,包括用以打开、关闭或保存窗口或图形、显示信息、更改图形显示、重生成图形或以不同格式输出图形的命令及系统变量。
数目 放弃指定数目的以前的操作。效果与多次输入 u 相同。
自动 将单个命令的操作编组,从而可以使用单个 U 命令放弃这些操作。如果“自动”选项设置为开,则启动一个命令将对所有操作进行编组,直到退出该命令。可以将操作组当作一个操作放弃。
如果“控制”选项关闭或者限制了 UNDO 功能,UNDO“自动”将不可用。
输入 UNDO 自动模式 [开(ON)/关(OFF)] <当前>: 输入 on 或 off,或按 ENTER 键
控制 限制或关闭 UNDO。
输入 UNDO 控制选项 [全部(A)/无(N)/一个(O)/合并(C)] <全部>: 输入选项或按 ENTER 键 全部打开完全 UNDO 命令。
无关闭 U 和 UNDO 命令,放弃早些时候在编辑任务中保存的任何 UNDO 命令信息。“标准”工具栏上的“放弃”按钮不可用。
当“无”或“一个”有效时,“自动”、“开始”和“标记”选项不可用。如果在 UNDO 关闭时尝试使用它,将显示以下提示:
输入 UNDO 控制选项 [全部(A)/无(N)/一个(O)] <全部>:
一个把 UNDO 限制为单步操作。
当“无”或“一个”有效时,“自动”、“开始”和“标记”选项不可用。当“一个”选项有效时,关于 UNDO 命令的主提示变为只显示“控制”选项或 UNDO 命令的单一步骤。
控制(C)/<1>: 如果输入 c,将显示上一次提示:
输入 UNDO 控制选项 [全部(A)/无(N)/一个(O)] <全部>:
合并为放弃和重做操作控制是否将多个、连续的缩放和平移命令合并为一个单独的操作。
要合并缩放和平移操作吗?[是(Y)/否(N)] <是>: 输入 y 或 n,或按 ENTER 键
注意从菜单开始的平移和缩放命令未合并,并始终保持独立操作。
开始、结束 将一系列操作编组为一个集合。输入“开始”选项后,所有后续操作都将成为此集合的一部分,直至使用“结束”选项。编组已激活时输入 undo begin 将结束当前集合,并开始新的集合。UNDO 和 U 将编组操作视为单步操作。
如果输入 undo begin 而不输入 undo end,使用“数目”选项将放弃指定数目的命令但不会备份开始点以后的操作。如果要回到开始点以前的操作,则必须使用“结束”选项(即使集合为空)。同样适用于 U 命令。由“标记”选项放置的标记在 UNDO 编组中不显示。
标记、后退 “标记”在放弃信息中放置标记。“后退”放弃直到该标记为止所做的全部工作。如果一次放弃一个操作,到达该标记时程序会给出通知。
只要有必要,可以放置任意个标记。“后退”一次后退一个标记,并删除该标记。如果没找到标记,“后退”将显示以下提示:
这将放弃所有操作。确定?<是>: 输入 y 或 n,或按 ENTER 键 输入 y 可放弃所有输入到当前任务中的命令。输入 n 可忽略“后退”选项。
如果使用“数目”选项放弃多个操作,UNDO 将在遇到标记时停止。
新人扫盲贴,高手勿喷,如果有高级用法的话可以补充在下面。
|