uc1601(\
UF_UI_write_listing_window(?1(\
UF_UI_save_listing_window(\UF_UI_exit_listing_window(); uc1601(\
UF_UI_open_listing_window();
启动UG NX 5.0,选择【文件】|【执行】|【NX打开…】命令,弹出如图22-17所示
对话框。选择生成的动态库文件“Example.dll”,单击 按钮,生成如图22-24所示的信息窗口。
图22-24 执行“Example.dll”文件生成的信息窗口
22.3.2 提示行与状态行
打开UG NX 5.0界面时,会发现在界面的最下方存在两个特殊的显示区域,即提示行与状态行。提示行位于左下方,用于引导用户下一步的操作进程,具有一定的操作导航能力;状态行位于右下方,反映当前的操作结果或反馈状态。提示行与状态行的使用在一定程度上降低了操作的难度,使得用户界面更加友好。提示行通过函数UF_UI_set_prompt进行设置,一般用于某个具体操作之前。状态行通过函数UF_UI_exit_status进行设置,一般在操作的进程中和进程结束后显示信息。
22.3.3 获取用户输入
UG/Open API的用户界面接口通过大量的子过程显示提示信息、接收信息及菜单,并等候用户应答。这些子过程是uc1600~uc1613,这些提示信息被显示在UG NX 5.0主界面的暗示行,一般说来,暗示行允许显示80个字符,但还依赖于所使用的字体。下面简单介绍部分函数的功能及其使用方法。
(1)函数uc1600():用于获取用户的字符串输入。
(2)函数uc1607():显示键盘输入界面并获取整数输入,返回值及参数说明如下。 ? 1:回退。 ? 2:取消。
第22章 UG NX 5.0二次开发基础 497
一 册 通 UG NX 5.0
? 3:接收(无用户输入时)。 ? 4:接收(有用户输入时)。 ? 8:不允许状态,不能启动对话框。
(3)函数uc1608():显示键盘输入菜单界面并获取整型或实型输入,返回值及参数说明等同于函数uc1607()。
(4)函数uc1609():显示键盘输入对话框并获取实型数,该函数与uc1607()类似。
(5)函数uc1613():显示键盘输入菜单,并获取整型、实型及字符串数据,该函数与uc1608()类似。
下面给出一个例子来说明函数uc1609的使用方法,其显示结果如图22-7所示。该例还使用了函数UF_PART_ask_display_part,用于查询当前显示的part文件;函数UF_MODL_create_exp用于创建表达式;函数UF_MODL_edit_exp用于修改表达式。调试程序时应加入一些头文件。 【例22-11】 创建获取用户输入的对话框。
操作步骤如下。
在程序中加入下面的头文件:
#include
把下面的代码添加到例22-1的黑体字代码所在的位置,按快捷键F7,编译Example工程,
出现编译成功的信息。
char *cp1 = \
char cp2[][16]={\int ir6, ip3 = 3 ;
double tool_data[] = { 3, 3, 1 }; int ip5[] = { 6,6,6 };
char dia[20], cut[20], flute[20], tmp[20]; int actprt;
ir6 = uc1609( cp1, cp2, ip3, tool_data, ip5 ); strcpy(dia,\
sprintf(tmp,\strcat(dia, tmp); strcpy(cut,\
sprintf(tmp,\strcat(cut, tmp);
strcpy(flute,\
sprintf(tmp,\strcat(flute, tmp);
actprt = UF_PART_ask_display_part(); /* check if active part */ if( actprt != NULL_TAG)
{ ir6 = UF_MODL_create_exp(dia); if( ir6 != 0) ir6=UF_MODL_edit_exp(dia);
498
ir6 = UF_MODL_create_exp(cut);
if( ir6 != 0) ir6=UF_MODL_edit_exp(cut); ir6 = UF_MODL_create_exp(flute);
if( ir6 != 0) ir6=UF_MODL_edit_exp(flute);}
启动UG NX 5.0,选择【文件】|【执行】|【NX打开…】命令,弹出如图22-17所示
对话框。选择生成的动态库文件“Example.dll”,单击 户输入对话框。
按钮,生成如图22-25所示的获取用
图22-25 执行“Example.dll”文件生成的获取用户输入对话框
22.4 小结
本章简述了UG/Open API语法基础,使读者初步了解了UG/Open API使用时的注意事项。然后介绍了在二次开发时常用的对话框及相关概念,并给出了一些例子。最后讲述了消息的发布与获取,从而使读者对UG NX 5.0二次开发有了一个初步的了解。
22.5 思考与练习
1.思考题
(1)UG/Open API函数的数据类型在应用上有什么不同?
(2)单选菜单列表对话框和多选菜单列表对话框是否可以同时使用? 2.练习题
(1)自己编制一个小程序,熟练掌握UG/Open API提供的一些自定义数据类型的使用方法,以及其对象类型与操作。
(2)编写一个对话框程序,使得在打开零件时能够进行文件及文件夹对话框操作,并可以选择菜单列表对话框,同时可以操作对象选择对话框进行对象选择。
(3)在上例的基础上添加UG NX 5.0信息窗口函数,同时可添加提示行或状态行。如果需要输入信息,再添加获取用户输入函数。
第22章 UG NX 5.0二次开发基础 499