首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

RevitAPI之IExternalApplications和 lExternalDBApplication

publicinterfaceIExternalApplication

{

Autodesk.Revit.UI.Result OnShutdown(UIControlledApplication application);

Autodesk.Revit.UI.Result OnStartup(UIControlledApplication application);

}

开发者可以通过实现IExternalApplications来添加自己开发的Revit应用。Revit通过后缀为“.addin”的文件来识别和加载实现IExternalApplication的外部插件。

lExternalApplication的接口要实现两个抽象函数:OnStartup和OnShutdown。用户可以通过这两个函数实现在Revit启动和关闭的时候定制所需的功能。

OnStartup 和 OnShutdown 兩数的参数均为 UIControlledApplication 类型。 UIControlledApplication 类是一种特殊的应用类,它不提供访问Revit的功能。 因为UIControlledApplication只在OnStartup和OnShutdown函数范围内起作用,在这个 作用域区间内用户是无法拿到Revit的文档并对其操作的。

UIComrolledApplication类提供访问定制UI和注册事件的方法

publicAutodesk.Revit.UI.Result OnStartup(UIControlledApplication application)

{

//添加一个新的Ribbon面板

RibbonPanel ribbonPanel = application.CreateRibbonPanel("NewRibbonPanel");

//在新的Ribbon面板上添加一个按钮

PushButton pushButton = ribbonPanel.AddItem(newPushButtonData("HelloRevit","HelloRevit", @"D:\Projects\HelloRevit\HelloRevit.dll","HelloRevit.Classl"))asPushButton;

returnResult.Succeeded;

}

publicResult OnShutdown(UIControlledApplication application)

{

//UI定制不耑要特别在OnShutdown方法中做处理

returnResult.Succeeded;

}

【数据库(DB)级别的外部应用】

数据库(DB)级别的外部应用与一般外部应用不同的是,它没有提供任何访问Revit UI的接口。它一般用于事件处理,开发者可以通过实现IExternalDBApplication来添加所需的DB基本的外部应用。

同 lExternalApplication 一样,lExternalDBApplication 接 口也有两个抽象函数 OnStartup和OnShutdown。

定义:

publicinterfacelExternalDBApplication

{

Autodesk.Revit.DB.ExternalDBApplicationResult OnShutdown(UIControlledApplication application);

Autodesk.Revit.DB.ExternalDBApplicationResult OnStartup(UIControlledApplication application);

}

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171220G0IMPK00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券