找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1357|回复: 3

[分享] 加载工具条[xml无处不在]

[复制链接]

已领礼包: 1个

财富等级: 恭喜发财

发表于 2017-5-19 11:10:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

×

//-------------------------
AutoCAD 2006 Customization Guide>
Customize the User Interface
//-------------------------
AutoCAD 2008 Customization Guide>
Customize the User Interface
//---------------------------------
在帮助文档中有如下描述:

   The XML-based CUI file replaces the menu files used in releases prior to AutoCAD 2006. Instead of using a text editor to customize menu files (MNU and MNS files), you customize the user interface from within AutoCAD.

这意味着 做工具条和菜单很简单,开发者专心把对象和命令写好,autodesk帮你实现了风格一致、可自动加载的主要界面元素。mnu 文件和编译代码实现工具条成为历史!
//----------------------------------------
实例:
adobe toolbar
google earth toolbar
在(R16.2 and plus)都这么用。
初探:
C:\Documents and Settings\XXX\Application Data\Autodesk\AutoCAD 2008\R17.1\enu\Support
(注:XXX可不是我的用户名,只是临时修改了一下,别误会啊!)
acad.cui
复制一份,改扩展名 xml,用dreamweaver或vs2005 打开。(能折叠标签)
< CustSection>
     <Header>
           <CommonConfiguration>
                <CommonItems>
                    <partialMenuFile>googleearth.cui</PartialMenuFile> //注意这里
                  </CommonItems>
           </CommonConfiguration>
           <WorkspaceRoot>
               
            </WorkspaceRoot>
      </Header>
      <MenuGroup>
            <MenuRoot>
                  <popMenuRoot>
                   </PopMenuRoot>
                  <ToolbarRoot>
                         <Toolbar>
                         </Toolbar>
                         <Toolbar>
                         </Toolbar>
                   </ToolbarRoot>
            <MenuRoot>
     </MenuGroup>
< /CustSection>
        
//------------------------------------------------
好了,仔细阅读 guide吧



0.jpg


1.jpg


有xml方法,用程序实现就显得。。。下面附com方法的源代码和简单使用说明:
关于代码使用的几点说明:
1 修改CreateToolbar()函数的button个数和AddToolbarButton()中的参数
2 在入口函数的载入部分加上
                            CreateToolbar();
3 在入口函数的卸载部分加上
                             CleanUpToolbar();
//------------------------------------------代码-------------------------
hr = tlbr->AddToolbarButton(index, L"ROAD", L"Creates a road: AGZS_ROAD", L"GZS_ROAD ", vtFalse, &button1);
button1->SetBitmaps(L"AGZS\\support\\data_16_road.bmp",L"AGZS\\support\\data_16_road.bmp");
button1->Release();
//-------------------------------------------说明------------------------
L                                由于com要求字符串为unicode编码,所有字符串前加 L,以便转化成宽字符
L"ROAD"                      是button的名字,也是鼠标放上后的tip显示
L"Creates a road: AGZS_ROAD"    鼠标放上后,在状态栏显示的说明性内容
L"GZS_ROAD "                    命令对应的字符串+一个空格,为什么加一个空格?
                                        为了按下button后自动运行命令,如果不加,
                                  则需要按回车才能运行命令,假如注册命令的函数如下:
                          acedRegCmds->addCommand(_T("TEST_COMMANDS"),
                                                                    _T("AGZS_ROAD"),
                                                                    _T("GZS_ROAD"),
                                                                    ACRX_CMD_TRANSPARENT,
                                                                        createROAD);
AGZS\\support\\data_16_road.bmp
                              把图片放到autocad搜索路径。比如安装目录,以上字符串表明在安装目录建立了
                             AGZS\support文件夹。
          图片最好是16*16的,24位bmp





请点击此处下载

查看状态:需购买或无权限

您的用户组是:游客

文件名称:toolbar_modified.rar 
下载次数:44  文件大小:1.41 KB 
下载权限: 不限 以上  [免费赚D豆]




论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!

已领礼包: 1034个

财富等级: 财源广进

发表于 2017-5-19 16:29:35 | 显示全部楼层
麻烦解释再详细一些
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2018-8-22 18:18:28 | 显示全部楼层
This is a c++ class, not a.net class, so I can't use it
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

发表于 2020-5-30 08:53:41 | 显示全部楼层
ObjectArx楼主,做个C#的此功能程序呢?c+好多人都不会用啊,谢谢了!!!
论坛插件加载方法
发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;
如果你在论坛求助问题,并且已经从坛友或者管理的回复中解决了问题,请把帖子标题加上【已解决】;
如何回报帮助你解决问题的坛友,一个好办法就是给对方加【D豆】,加分不会扣除自己的积分,做一个热心并受欢迎的人!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|申请友链|Archiver|手机版|小黑屋|辽公网安备|晓东CAD家园 ( 辽ICP备15016793号 )

GMT+8, 2024-11-17 20:33 , Processed in 0.192611 second(s), 37 queries , Gzip On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表