iCAx开思网

标题: 关于UG的菜单问题的讨论 [打印本页]

作者: 风缘    时间: 2011-11-11 11:39
标题: 关于UG的菜单问题的讨论
在网络上能搜索到的信息来看,在做二次开发中使用的Menu基本上都是下面的格式

EDIT UG_GATEWAY_MAIN_MENUBAR
AFTER UG_HELP
CASCADE_BUTTON MYPLUS_MENU
LABEL MYPlus
END_OF_AFTER
MENU MYPLUS_MENU
BUTTON MY_FUN
LABEL My Fun
ACTIONS TrainPara.dll
END_OF_MENU

这种方式下,每个菜单项的actions指向一个dll文件,这样的话,用C#开发的话,是不是一个菜单项就要对应一个dll

在NX 8.0的安装目录的NXOpen子目录下(D:\Program Files\Siemens\NX 8.0\UGOPEN\SampleNXOpenApplications\.NET\MenuBarDotNetApp),提供了一个菜单的例程:
VERSION 120
EDIT UG_GATEWAY_MAIN_MENUBAR
MENU UG_APPLICATION
! ***NOTE button name must match the name you registered for
! your application in the MenuBarManager()->RegisterApplication call
    APPLICATION_BUTTON SAMPLE_CSHARP_APP
    LABEL Sample C Sharp Application
    LIBRARIES MenuBarCSharpApp
    MENU_FILES MenuBarCSharpApp.men

里面采用的Application_BUTTON的方式加载菜单。这种方式是NX运行后,并不会马上出现菜单,而是在应用菜单下添加了一个新的应用“Sample C Sharp Application”。加载了这个应用后,相应的菜单(在MenuBarCSharpApp.men 中定义)才会加载。

这种方式可以在C#程序(或者VB程序)中,为每个菜单项定义一个回调函数,也就是说菜单的回调函数可以在一个dll中搞定。但是现在遇到的问题是,加载了这个应用后,“建模"应用就不见了,甚至连插入草图的菜单和工具条都不见了。

希望大侠们指点指点

作者: 风缘    时间: 2011-11-14 10:37
问题解决了




欢迎光临 iCAx开思网 (https://www.icax.org/) Powered by Discuz! X3.3