zoukankan      html  css  js  c++  java
  • Revit:IExternalCommand和IExternalApplication的区别

    事先说明,由于本人是刚接触Revit,所有知识点,都是我自己一边研究一边写的。所以,可能是有错误的,若有错误,还望指正和海涵。

    今天想搞清楚IExternalCommand和IExternalApplication的区别,找了一些资料,也没有相关的说明,更多的是举例子。那么我来说一下。

    Revit有一个启动过程,启动了后才开始打开工程项目开始你的工作,那么:

    启动开始的时候 ,会进行加载IExternalApplication的扩展接口,并调用该接口下的OnStartup方法进行初始化,当关闭Revit的时候,就会调用另一个接口方法:OnShutdown。

    IExternalApplication本身没有任何的业务逻辑功能可以实现,仅仅是给你用于在Revit整个Application过程中初始化或者关闭时加载事件使用,所以,可以使用此接口来给Revit加上按钮菜单。

    通常,IExternalApplication接口的OnStartup可以用来给Revit面板新增各种功能菜单,而这些菜单你可以让他启动某一个IExternalCommand的具体业务功能。

    好,那么顺理成章的,IExternalCommand就是实现具体的业务功能的接口。该接口无法创建一个菜单,若要通过点击某个菜单上的按钮来加载此IExternalCommand的业务功能,就要使用上面的IExternalApplication来增加。

    所以,这2个接口是可以相互配合工作的,而不是谁取代谁的问题。

    IExternalCommand接口有一个Execute方法,用它便可以实现你具体的业务逻辑。

    本随笔仅仅是说明IExternalCommand和IExternalApplication的区别,所以,对于2个接口的具体方法的内容该怎么使用,我现在也还不会,暂时就先不写。后面有心情再写了。

  • 相关阅读:
    Ubuntu下虚拟机卡顿
    C函数重载
    ACPI电源状态定义
    /dev/random生成随机数慢的问题
    GCC强制静态库链接未使用的函数、变量
    cmake交叉编译问题
    cmake语法
    CentOS安装OpenOCD
    LOJ3119. 「CTS2019 | CTSC2019」随机立方体 二项式反演
    BZOJ4710 [Jsoi2011]分特产 容斥
  • 原文地址:https://www.cnblogs.com/mazhiyuan/p/13353277.html
Copyright © 2011-2022 走看看