BeginCommand 事件

在命令发出后、完成前立即被触发。

参阅 | 示例

语法

object.BeginCommand(CommandName)

object

Application
针对有效容器对象进行求值的对象表达式。 在这种情况下,唯一有效的容器为应用程序(application)。

CommandName

String[字符串]
正在发出命令的名称。

说明

只要AutoCAD收到发出命令的要求,便马上回触发BeginCommand事件。此要求可因用户通过AutoCAD用户接口或在程序中要求而出现。在AutoCAD完成命令的触发后,EndCommand事件紧随BeginCommand事件发生。 如果用户取消命令的执行,EndCommand事件将不会触发。 

任何AutoCAD 命令、任何通过ObjectARX应用程序注册到AutoCAD命令栈的命令或是Visual LISP的 vlax-add-cmd 函数都会触发BeginCommand事件。

LISP函数通过vl-acad-defun 函数定义为外部子程序时不会触发这个事件。这些函数不会加到命令栈中,即使用户从AutoCAD命令行执行。 相反地,这些函数将会触发 BeginLISPEndLISP 事件。如果需要 LISP命令在执行时可以被辨识,用户需要使用Visual LISP的 vlax-add-cmd 函数将命令准确地注册到AutoCAD 的命令栈中。

假如用户使用LISP的 vl-acad-defun函数先取消定义 AutoCAD的命令而后又重新定义,BeginCommand 命令要在现行AutoCAD命令被调用,例如(command "_.LINE" ...),之后才会被触发。 

AutoCAD命令以分组方式存储在命令栈中。每个AutoCAD 操作都会创建一个命令栈。这个栈包含原先的AutoCAD 命令以及用户增加的任何自定义命令。

显示模态对话框时不会触发任何事件。