执行自动CAD 命令 支持的平台:视窗和 Mac OS 签名(vl-cmdf [arguments ...])
返回值类型:T 总是返回。T 言论该函数类似于函数,但不同之处在于它计算传递给它的参数的方式。该函数在执行 AutoCAD 命令之前计算所有提供的参数,如果在参数计算期间检测到错误,则不会执行 AutoCAD 命令。相反,该函数将每个参数依次传递给 AutoCAD,因此在检测到错误之前可能会部分执行该命令。vl-cmdfcommandcommandvl-cmdfcommand 如果您的命令调用包括对另一个函数的调用,则在它执行您的命令之前执行调用,而在它开始执行您的命令后执行调用。vl-cmdfcommand 某些 AutoCAD 命令在通过调用时可能正常工作,但在通过调用时可能失败。该函数主要克服了无法在命令中使用函数的限制。vl-cmdfcommandvl-cmdfgetXXX 注意:如果在 Windows 上的 AutoCAD 中从 Visual LISP 发出,焦点不会更改为 AutoCAD 窗口。如果命令需要用户输入,您将在控制台窗口中看到返回值 (),但 AutoCAD 将等待输入。您必须手动激活 AutoCAD 窗口并响应提示。在执行此操作之前,任何后续命令都将失败。vl-cmdfT
例子如果在 AutoCAD 命令提示符下输入以下调用,则两者之间的差异更容易看出:commandvl-cmdf 命令:(命令“._line”(获取点“点?”)'(0 0) “”) 行 指定第一个点:点? 指定下一个点或 [撤消]: 命令:无 使用时,首先执行 LINE 命令;然后调用该函数。commandgetpoint 命令:(vl-cmdf “._line” (getpoint “point?”)'(0 0) “”) 点?线 指定第一个点: 指定下一个点或 [撤消]: 命令: T 使用时,首先调用该函数(注意“点”提示符);然后执行 LINE 命令。vl-cmdfgetpointgetpoint 以下示例显示了相同的命令,但将无效的点列表参数传递给 LINE 命令。请注意结果的不同之处: 命令:(命令“._line”(获取点“点?”)'(0) “”) 行 指定第一个点:点? 指定下一个点或 [撤消]: 命令:擦除零 选择对象:指定对角:*取消* 0 找到 该函数将每个参数依次传递给 AutoCAD,而不计算参数,因此无法检测到无效的点列表。command 命令:(vl-cmdf “._line” (getpoint “point?”)'(0) “”) 点?应用程序错误:无效的实体/点列表。 零 由于在将命令传递给 AutoCAD 之前会评估每个参数,因此会检测到无效的点列表,并且不会执行该命令。vl-cmdf |
|Archiver|CAD开发者社区 ( 苏ICP备2022047690号-1 苏公网安备32011402011833)
GMT+8, 2024-12-15 14:52
Powered by Discuz! X3.4
Copyright © 2001-2021, Tencent Cloud.