QQ登录

只需一步,快速开始

快捷登录

登录 或者 注册 请先

UG爱好者

查看: 18290|回复: 10
打印 上一主题 下一主题

[求助] UG二次开发环境变量的设置问题UGII_USER_DIR

[复制链接]

三级士官

Rank: 3Rank: 3

11

主题

54

帖子

641

积分
跳转到指定楼层
楼主
发表于 2015-3-25 16:06:40 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
       最近在学UG二次开发,但是看书上例子,菜单栏,UIStyler,还有toolbar,每个例子都设置不同的目录,对应的环境变量都是UGII_USER_DIR,但是,如果我同时需要用到几种不同的功能同时使用,这个时候我是公用一个文件夹的startup和application,还是有别的方法。谢谢指教!

有奖推广贴子: 

回复

使用道具 举报

三级士官

Rank: 3Rank: 3

11

主题

54

帖子

641

积分
推荐
 楼主| 发表于 2015-3-25 21:58:39 | 只看该作者
1.创建目录并配置环境变量

(1)自定义创建。
创建一个文件夹如D:/UG_OPEN, 在此文件夹下创建二级文件夹D:/UG_OPEN/APPLICATION和D:/UG_OPEN/STARTUP。

打开UG安装目录下的UGII中ugii_env.dat文件,修改UGII_USER_DIR下的路径,如UGII_USER_DIR=D:/UG_OPEN,并去掉前面的“#”。

(2)第三方创建。
找到UG安装目录下的UGALLIANCE下的VENDOR文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。

打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_VENDOR_DIR前面的“#”去掉。

(3)系统自己创建。
找到UG安装目录下的UGALLIANCE下的SITE文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。

打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_SITE_DIR前面的“#”去掉。

这三种方法的区别在于系统启动时加载的顺序不同,依次为site,vendor和用户自己定义的。

本文采用第一种方法。
参考begtostudy的一篇文章
回复 支持 1 反对 0

使用道具 举报

Administrator

德高才能望重

Rank: 16Rank: 16Rank: 16Rank: 16

2293

主题

1万

帖子

3万

积分

站长优秀版主论坛技术员论坛元老论坛贡献推广达人

沙发
发表于 2015-3-25 16:29:13 | 只看该作者
菜单栏里调用二次开发指令可以不用UGII_USER_DIR的,因为我不是从事这个事业的。

之前有在UG上订制过菜单,可以在菜单里直接指向startup和application的。
回复 支持 反对

使用道具 举报

三级士官

Rank: 3Rank: 3

11

主题

54

帖子

641

积分
板凳
 楼主| 发表于 2015-3-25 17:34:04 | 只看该作者
恩,菜单栏我是直接从custom_dirs.dat里设置的,UI用的是UGII_USER_DIR设置了下环境变量,但是如果要是我同时用toolbar呢,书上Toolbar又要设置一个环境变量。我就有点糊涂了
回复 支持 反对

使用道具 举报

三级士官

Rank: 3Rank: 3

11

主题

54

帖子

641

积分
地板
 楼主| 发表于 2015-3-25 17:35:28 | 只看该作者
老叶 发表于 2015-3-25 16:29
菜单栏里调用二次开发指令可以不用UGII_USER_DIR的,因为我不是从事这个事业的。

之前有在UG上订制过菜单 ...

恩,菜单栏我是直接从custom_dirs.dat里设置的,UI用的是UGII_USER_DIR设置了下环境变量,但是如果要是同时用toolbar,书上toolbar又要设置一个环境变量,这样就让我有点糊涂了
回复 支持 反对

使用道具 举报

三级士官

Rank: 3Rank: 3

11

主题

54

帖子

641

积分
5#
 楼主| 发表于 2015-3-25 21:57:11 | 只看该作者
这个是别人的一个帖子,跟这个问题有些相关,先收藏一下:=====================================


最近有人问起,我就随便说说。下面的文章是引用别人的。

我主要是加一些说明。

在UG界面里做UIStyler设计的时候,最好选好是【回叫】还是【菜单】。而不是选择【全部】。因为二者的方式差别实在是大。
回叫方式就是通过函数调用对话框。生成的文件里会有一个函数叫什么function的,里面有调用对话框的示例代码。

菜单方式是通过菜单直接调用对话框的方式。比如下面的菜单

  1. VERSION 120

  2.   EDIT UG_GATEWAY_MAIN_MENUBAR

  3.   BEFORE UG_HELP
  4.     CASCADE_BUTTON UISTYLER_DLG_CASCADE_BTN
  5.     LABEL Dialog Launcher
  6.   END_OF_BEFORE

  7.   MENU UISTYLER_DLG_CASCADE_BTN
  8.     BUTTON MY_BTN
  9.     LABEL Display my dialog
  10.     ACTIONS my.dlg
  11.   END_OF_MENU
复制代码

另外,最好在英文界面下做UIStyler,否而会出现莫名其妙的问题。比如中文字符变量等等。

下面是转载的别人的文章,各位参考一下吧。

1.创建目录并配置环境变量

(1)自定义创建。
创建一个文件夹如D:/UG_OPEN, 在此文件夹下创建二级文件夹D:/UG_OPEN/APPLICATION和D:/UG_OPEN/STARTUP。

打开UG安装目录下的UGII中ugii_env.dat文件,修改UGII_USER_DIR下的路径,如UGII_USER_DIR=D:/UG_OPEN,并去掉前面的“#”。

(2)第三方创建。
找到UG安装目录下的UGALLIANCE下的VENDOR文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。

打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_VENDOR_DIR前面的“#”去掉。

(3)系统自己创建。
找到UG安装目录下的UGALLIANCE下的SITE文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。

打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_SITE_DIR前面的“#”去掉。

这三种方法的区别在于系统启动时加载的顺序不同,依次为site,vendor和用户自己定义的。

本文采用第一种方法。

2。UIStyler设计
(1)打开UG,进入UIStyler(主菜单Application下)。
(2)界面设计。

(3)保存至刚才建立的application文件夹下,此时会出现三个文件,如下图。


3。建立VC项目
(1)将刚才生成在application目录下的头文件和源程序移到VC工程所在的目录下,如D:/SOURCE。

(2)新建一个工程,选择Win32 DLL,选择创建空的DLL。

(3)将头文件和源程序加入工程。


4。设置VC环境

(1)选择菜单栏上的Project->Setting->C/C++,按下图进行设置,主要试讲头文件引入工程。


(2)选择菜单栏上的Project->Setting->LINK,按下图进行设置,将两个LIB库引入工程(UG 18以上适用)。


其中输出的文件名可选择路径D:/UG_OPEN/application,其表明系统启动时不加载这个二次开发。也可输出的文件名选择路径D:/UG_OPEN/startup,其表明系统启动时加载这个二次开发。

(3)选择菜单栏上的Tools->Options...->Directories,按下图加入库文件。
5。修改源程序
(1)打开源程序,找到MenuScript样板所在,拷贝这段内容,并保存到D:/UG_OPEN/STARTUP 下。注意文件名的后缀应为.men,文件名可随意取.

  1. VERSION 120

  2.   EDIT UG_GATEWAY_MAIN_MENUBAR

  3.   BEFORE UG_HELP
  4.     CASCADE_BUTTON UISTYLER_DLG_CASCADE_BTN
  5.     LABEL Dialog Launcher
  6.   END_OF_BEFORE

  7.   MENU UISTYLER_DLG_CASCADE_BTN
  8.     BUTTON MY_BTN
  9.     LABEL Display my dialog
  10.     ACTIONS my.dlg
  11.   END_OF_MENU
复制代码



(2)找到程序中
  1. #ifdef MENUBAR_COMMENTED_OUT
复制代码

及其配对的“endif”并删除。


(3)找到程序中
  1. #ifdef DISPLAY_FROM_USER_EXIT
复制代码

及其配对的“endif”并删除。注意不要删除这两项里面的程序。


(4)在将刚才
  1. #ifdef DISPLAY_FROM_USER_EXIT
复制代码

下的语句中的
  1. <enter a valid user exit here>
复制代码

改为ufusr。

(5)编译程序。

6。打开UG,可发现菜单栏上多了自己开发的按钮,至此大功告成!






回复 支持 反对

使用道具 举报

上等兵

Rank: 1

2

主题

18

帖子

181

积分
7#
发表于 2015-4-10 10:19:09 | 只看该作者
如果有工具条和菜单 同时使用 设置UGII_VENDOR_DIR=...\就行,NX启动后会自动执行菜单和工具条,另外工具条的位图文件使用变量为UGII_BITMAP_PATH=...\
回复 支持 反对

使用道具 举报

三级士官

Rank: 3Rank: 3

11

主题

54

帖子

641

积分
8#
 楼主| 发表于 2015-4-21 09:09:16 | 只看该作者
小植 发表于 2015-4-10 10:19
如果有工具条和菜单 同时使用 设置UGII_VENDOR_DIR=...\就行,NX启动后会自动执行菜单和工具条,另外工具条 ...

谢谢,回头我试一下
回复 支持 反对

使用道具 举报

少尉

Rank: 5Rank: 5

2

主题

113

帖子

2867

积分
9#
发表于 2015-6-13 11:48:23 | 只看该作者
奇塔车饰 发表于 2015-3-25 21:57
这个是别人的一个帖子,跟这个问题有些相关,先收藏一下:=====================================

库文件是什么名字啊。
回复 支持 反对

使用道具 举报

少尉

Rank: 5Rank: 5

2

主题

113

帖子

2867

积分
10#
发表于 2015-6-13 11:50:58 | 只看该作者
奇塔车饰 发表于 2015-3-25 21:57
这个是别人的一个帖子,跟这个问题有些相关,先收藏一下:=====================================

能否将begtostudy的博客或者个人主页发给我啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

 
 
QQ:1359218528
工作时间:
9:00-17:00
 
微信公众号
手机APP
机械社区
微信小程序

手机版|UG爱好者论坛 ( 京ICP备10217105号-2 )    论坛管理员QQ:1359218528

本站信息均由会员发表,不代表本网站立场,如侵犯了您的权利请联系管理员,邮箱:1359218528@qq.com  

Powered by UG爱好者 X3.2  © 2001-2014 Comsenz Inc. GMT+8, 2024-11-14 03:31

返回顶部