AutoCAD VBA添加菜单
# 给cad添加自定义菜单

Private Sub AddBar()
Dim NewMenuItem As AcadPopupMenuItem
Dim TheMacro As String
Dim MI As Integer On Error Resume Next
Dim currMenuGroup As AcadMenuGroup
Set currMenuGroup = Application.MenuGroups.Item()
'Create the new menu
Set NewMenu = currMenuGroup.Menus.Add("批量绘图")
If Err.Number Then
Err.Clear
For Each NewMenu In currMenuGroup.Menus
If NewMenu.Name = "批量绘图" Then Exit For
Next
End If 'Add a menu item to the new menu
'Assign the macro string the VB equivalent of "ESC ESC _open "
'TheMacro = Chr(3) & Chr(3) & Chr(95) & "-vbarun ""GeoSection.dvb!DZPM.GeoSection""" & Chr(32)
TheMacro = Chr() & Chr() & Chr() & "-vbarun ""MainSub""" & Chr()
Set NewMenuItem = NewMenu.AddMenuItem(NewMenu.Count + , "批量绘图", TheMacro)
If Err.Number Then Err.Clear
'Display the menu on the menu bar
NewMenu.InsertInMenuBar (ThisDrawing.Application.MenuBar.Count + )
If Err.Number Then Err.Clear
End Sub
写几个事件驱动菜单显示

Private Sub AcadDocument_BeginCommand(ByVal CommandName As String)
If StrComp(Left$(CommandName, ), "VBA", ) <> And UCase$(CommandName) <> "APPLOAD" Then Exit Sub
If NewMenu Is Nothing Then AddBar
End Sub Private Sub AcadDocument_EndCommand(ByVal CommandName As String)
If StrComp(Left$(CommandName, ), "VBA", ) <> And UCase$(CommandName) <> "APPLOAD" Then Exit Sub
If NewMenu Is Nothing Then AddBar
End Sub Public Sub MainSub()
Dim frm As New UserForm1
Call UserForm1.Show
End Sub
最终效果

AutoCAD VBA添加菜单的更多相关文章
- Qt自适应大小显示图片,添加菜单
由于后面的图像处理需要UI,OpenCV自带也不怎么会,MFC实在懒得学的.听同学说Qt不错,就用Qt做UI了. 本文主要介绍三个内容:在Qt Creator中使用OpenCV2.Qt中自适应显示图片 ...
- MFC 对话框添加菜单
1.在Resource View 里右击菜单里选择Add Resource,选择menu,添加一个IDR_MENU1的菜单.在编辑器编辑菜单,添加菜单项,命名各个菜单项的ID. 2.在所要添加菜单的对 ...
- 【Android】添加菜单和监听菜单方法详解
添加菜单 可以在onCreateOptionsMenu或者onPrepareOptionsMenu方法中来添加菜单 代码添加: menu.add((int groupId, int itemId, i ...
- WordPress插件制作教程(三): 添加菜单的方法
上一篇编写了一个简单的插件,让大家对插件的简单制作有个了解,这一篇我们在更深一步,当我们激活插件后后台会显示菜单出来,然后通过单击菜单显示自己定义好的信息.激活之后会在WordPress后台显示一个菜 ...
- EcShop后台添加菜单[步骤]
1. 添加菜单的链接地址:打开文件[/后台目录/includes/inc_menu.php],在结尾加入例如:$modules['dashi']['dashi_list'] = 'join_dashi ...
- menuStrip1动态添加菜单及快捷键
public partial class FormMkTest : Form { public FormMkTest() { InitializeComponent(); } private void ...
- 在 jupyter 中添加菜单和自动完成功能
在 jupyter 中添加菜单和自动完成功能 参考文档http://www.360doc.com/content/17/1103/14/1489589_700569828.shtmlhttp://to ...
- Abp添加菜单
Abp添加菜单 在abp模板中添加菜单,EntityFramework+Angular.js模板,使用的Abp版本为3.8.1. 创建Abp项目模板,例如名称叫做LawAndRegulation. 服 ...
- 实现UE添加自定义按钮之添加菜单
1.ueditor.config.js配置文件中配置 2.在ueditor.all.js配置文件中配置点开的的弹框位置 3.在ueditor1_4_3-utf8-jsp\themes\default\ ...
随机推荐
- Git和SVN共存的方法
刚工作的时候都是用的cvs和svn,对git不熟悉,随着工作的需要,打分支和版本管理的需要,熟悉起来了git,这一用不可收拾,比svn远远好用,尤其是版本分支管理上,切换分支的方便性,现在这家公司还是 ...
- 在docker下面安装Nginx PHP mysql let's encrypt
最近自己在弄了个Nginx PHP Mysql Let's encrypt的docker,下面记录一下 1)先装 Let's encrypt docker run --rm -p 80:80 -p 4 ...
- 讨论几种数据列Column的特性(上)
之前笔者写过一个系列<索引列的usable和visible>(http://space.itpub.net/17203031/viewspace-688135),详细讨论了索引列的usab ...
- [BZOJ3555] [Ctsc2014]企鹅QQ(Hash)
传送门 可以枚举被删除的位置,然后用hash表判重,然而网上好多题解都是用 sort 判重的. 不知道为什么,int 总是过不了,换成 long long 或者是 unsigned long long ...
- hdu 2642二维树状数组 单点更新区间查询 模板题
二维树状数组 单点更新区间查询 模板 从零开始借鉴http://www.2cto.com/kf/201307/227488.html #include<stdio.h> #include& ...
- Kafka 生产消费 Avro 序列化数据
https://unmi.cc/kafka-produce-consume-avro-data/ https://unmi.cc/apache-avro-serializing-deserializi ...
- CodeForces - 812C Sagheer and Nubian Market 二分
On his trip to Luxor and Aswan, Sagheer went to a Nubian market to buy some souvenirs for his friend ...
- FJNUOJ1158(莫比乌斯反演)
题目:给定n个数字a1...an.有m个询问,格式为L R X Y,意为求aL到aR之间与x的最大公因数为y的个数. 数据组数T<=20 1<=n,m<=1e5 1<=ai&l ...
- Ubuntu 16.04出现:qmake: could not exec '/usr/lib/x86_64-linux-gnu/qt4/bin/qmake': No such file or directory
没有安装qt4-qmake,安装即可: sudo apt-get install qt4-qmake 参考: https://stackoverflow.com/questions/23703864/ ...
- Hive之侧视图(Lateral View)
Lateral View和UDTF类功能函数一起使用,表中的每一行和UDTF函数输出的每一行进行连接,生成一张新的虚拟表,可以对UDTF产生的记录设置字段名称,新加的字段可以使用在sort by,gr ...