研发动态

[Revit二次开发] Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结 [课程编码4381]

[复制链接] []
发表于 2023-7-25 23:16:49| 字数 2,076 | 显示全部楼层 |阅读模式
Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

目录

一、创建普通的一个panel里面三个32px*32px的pushbutton,剩下两个写法一样

二、创建三个层叠按钮 层叠按钮图标需为16px*16px 层叠按钮最多为一列放三个,这个也要创建个panel,具体看我效果图,不然就添加在第一个panel里面。

三、创建下拉按钮,我是同样创建了panel,也可以添加到上面的panel里面。

四、创建下拉记忆按钮(可记忆上次使用的)下拉记忆按钮的SplitButton无需设置图标,选择哪个button会自动使用它的图标。

五、创建单选按钮  意思就是两个或多个按钮,你只能选择其中一个。

六、创建组合按钮

七、帮助  WIKI  chm这些的一个链接方式,这个简单搞定

​ 八、创建一个文本框

九、我这里面的地址全部写死的,别人用就得重新编译。那就用下面的方式写活。

1、新建个文件夹把图片放进去。

2、另一种图片位置获取就是

3、这个方法忘了找不到了,等我找到再补充。(现在找到了)

十、最后就是控制哪个button在哪个视图或者工作集或者模式下不显示的事,就是写个类来控制就行了。做个例子;



解释和说明

先上几个图,以助于理解界面都有哪些按钮我们可以写在revit二开自己的界面上。

我用的revit2018API。不同之处细细琢磨吧!

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

这是橄榄山叶雄进叶老师的课件截图。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

这两张是BIMBOX课程的截图。基本就是列出的这些按钮我们可以放在自己的菜单面板上;

零、首先要创建一个自己的Ribbon Tab 页,不然你的菜单放哪儿呢?就放Tab里面啊。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

一、创建普通的一个panel里面三个32px*32px的pushbutton,剩下两个写法一样

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

二、创建三个层叠按钮 层叠按钮图标需为16px*16px 层叠按钮最多为一列放三个,这个也要创建个panel,具体看我效果图,不然就添加在第一个panel里面。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

然后把这三个按钮添加到你创建的panel里面。我是总共添加了六个按钮,所以效果图显示两列;

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

三、创建下拉按钮,我是同样创建了panel,也可以添加到上面的panel里面。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

三个按钮添加到下拉框,下拉框添加了横的分割线,我总共添加了两边,主要是为了看下拉框添加横向分割线的区别,也演示一下同一个panel里面两个按钮之间的竖向分割线。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

四、创建下拉记忆按钮(可记忆上次使用的)下拉记忆按钮的SplitButton无需设置图标,选择哪个button会自动使用它的图标。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

这个也是添加了两遍哦!这个和第三的区别就是它记忆你上次的选择,你选哪个下次用直接外面点不用进去选一下。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

五、创建单选按钮  意思就是两个或多个按钮,你只能选择其中一个。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

同样的创建,不同的是后面的添加方法的使用; 我是创建了三个单选按钮。三选一。每次只能从三个选择一个。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

六、创建组合按钮

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

注意要添加到自己的组里面,我分了两组。这个相当于下拉按钮里面添加了按钮的分组。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

七、帮助  WIKI  chm这些的一个链接方式,这个简单搞定

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结
八、创建一个文本框

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

九、我这里面的地址全部写死的,别人用就得重新编译。那就用下面的方式写活。

获取到当前文档dll的路径

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

然后创建按钮的时候把 @"E:\桌面\编程\CreateRibbonTab\CreateRibbonTab\bin\Debug\CreateRibbonTab.dll"

全部换成获取到的dll的地址就行了,比如可以换成上面获取到的assemblyPath。

图片也有同样的问题啊,那就只有两种办法,

1、新建个文件夹把图片放进去。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

记得设置两个图片的这个属性;

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

然后就再一行代码获取到图片的位置

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

这样不管谁用程序都不会丢失了。

2、另一种图片位置获取就是

var imageSource1 = Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) + @"\Images\3D.png";

这是获取了程序集dll的路径,在此路径下有个Images的文件夹,里面就是要的照片。

3、这个方法忘了找不到了,等我找到再补充。(现在找到了)

这种就是获得本地dll文件的位置,然后再根据名称的替换把想要的图片找到,前提是dll文件和图片放在同一个文件夹内,放在别的文件夹或者放在上级文件夹的话就得自己尝试了。

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

第一行是获取本地dll(本地安装的程序)的位置。获得的是插件不是revit的。

第二行是把dll的位置替换成图片的。

十、最后就是控制哪个button在哪个视图或者工作集或者模式下不显示的事,就是写个类来控制就行了。做个例子;

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结

Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结




大概就这些内容了吧,以后有看到的想到的摸索到的再补充。

特别感谢叶进雄叶老师和BIMBOX的Kevin老师。

源代码在这(13条消息) Revit二次开发——Ribbon菜单的创建以及各种不同的button(按钮)的代码总结-C#文档类资源-CSDN文库


原链接:https://blog.csdn.net/weixin_47015373/article/details/122681021
77834706_YAiOliwlEgvroaWRptyadTNZw.rar (36.01 KB, 下载次数: 175, 售价: 30 学分)
回复 申请删帖

使用道具 举报

  • 联系我们
  • 邮箱:837005074#qq.com(请把#改成@)
  • 电话:18810188033
  • QQ客服 837005074
  • 人工客服:周一至周日(晚6点至11点)
  • 扫描加客服QQ

  • 扫描加客服微信

QQ|关于我们|Archiver|手机版|小黑屋|畅建科技 ( 京ICP备2022013818号-3 )

GMT+8, 2024-5-4 06:38 , Processed in 0.484387 second(s), 58 queries .

Powered by 找最好 X3.4

© 2015至今 zhaozuihao.com