适用版本:所有NX
在NX二次开发中,常常会出现那种不需要部件运行的二次开发程序,但该程序又需要使用NX的BlockUI界面,而BlockUI界面在无部件环境下是无法使用的,那么有没有办法在NX无部件环境下使用BlockUI功能界面程序呢?本文主要介绍如何解决这一需求。
从NX模块环境方面着手,既然在没有打开显示部件的环境无法运行BlockUI界面程序,那么可不可以在程序运行后打开功能界面之前先创建一个临时部件,在程序运行完之后再把临时部件销毁,这样不就可以在无部件环境下运行了吗?下图是具体的代码:
上述方法属于取巧的方式,那有没有真正在无部件环境下能够运行BlockUI界面程序的方法呢?答案是有的!该方法属于扩展方法,具体代码如下图所示:
直接使用“theDialog=theUI.CreateDialog(theDlxFileName,true);”调用该方法。第二个输入形参如果为“true”,则调用无部件环境运行方法,如果为“false”或者不输入,则不调用,即使用NX原生代码。
上述两种方法都可以使用,在安全性方面,新建一个临时部件是一个更好的选择,但在程序执行的直观性上,采用第二种方法无疑是更好的。