先来看CommandMethod的定义,它的构造函数很多,其中参数最全的一个如下图所示:
groupName组名,string,命令编组名称,一般在小项目开发中用得比较少。
globalName,全局名称, string,即命令,它应该是唯一的,不然在调用时会发生意外。
localizedNameId, 本地名称,string,指定语言的本地命令名称,不知道有什么用。
flags, 命令标志,CommandFlags,定义命令的行为。详见附表。
contextMenuExtensionType, 上下文菜单类型标志 ,Type, 定义命令处于活动状态时的上下文菜单行为。
helpFileName, 帮助文件名string,帮助文件,含有命令活动状态下按下F1时要显示的帮助主题。
helpTopic ,帮助主题,string。帮助文件中的主题。
除上面这个构造函数外,它还有5个:
CommandMethodAttribute(string globalName)
CommandMethodAttribute(string globalName, CommandFlags flags)
CommandMethodAttribute(string groupName, string globalName, CommandFlags flags)
CommandMethodAttribute(string groupName, string globalName, string localizedNameId, CommandFlags flags)
CommandMethodAttribute(string groupName, string globalName, string localizedNameId, CommandFlags flags, string helpTopic)
CommandMethodAttribute(string groupName, string globalName, string localizedNameId, CommandFlags flags, Type contextMenuExtensionType)
在使用时的注意事项有:
(1)CommandMethodAttribute和CommandMethod是一个,不管使用哪一个都可以;
(2)CommandMethodAttribut的使用需要添加相关引用,包括accoremgd,acdbmgd和acmgd三个;
(3)CommandMethod后的有效行必须是一个函数。
附表:Command Flags命令标志
枚举值
描述
ActionMacro
可以用动作录制器录制命令动作;
DocReadLock
命令执行时将被只读锁定;
Interruptible
提示用户输入时可以中断命令;
Modal
别的命令运行时不能运行此命令;
NoActionRecording
不能用动作录制器录制命令动作;
NoBlockEditor
不能从块编辑器使用该命令;
NoHistory
不能将命令添加到repeat-last-command(重复上一个命令)历史列表;
NoPaperSpace
不能从图纸空间使用该命令;
NoTileMode
当TILEMODE置1时不能使用该命令;
NoUndoMarker
命令不支持撤销标记。用于不修改数据库因而也就无需出现在撤销记录中的那些命令;
Redraw
不清空取回的先选择后执行设置及对象捕捉设置;
Session
命令运行于应用程序上下文,而不是当前图形文档上下文;
Transparent
别的命令运行时可以运行此命令;
Undefined
只能通过全局名使用命令;
UsePickSet
清空取回的先选择后执行设置;
Session,在使用的时候acedcmd好像就不能用了。
|
暂时没有评论
发表评论 - 不要忘了输入验证码哦! |