青华模具培训学校

 找回密码
 注册

QQ登录

只需一步,快速开始

青华模具培训学院
查看: 3331|回复: 0

[转载] 谈谈UG的UIStyler

[复制链接]
发表于 2009-6-30 19:17 | 显示全部楼层 |阅读模式
最近有人问起,我就随便说说。下面的文章是引用别人的。
+ g9 T3 ]$ A8 ~* {5 O; [$ |" L' ]我主要是加一些说明。
8 {* ~4 }# W3 ?6 X# u0 kug界面里做UIStyler设计的时候,最好选好是【回叫】还是【菜单】。而不是选择【全部】。因为二者的方式差别实在是大。* E/ R5 y& C5 v0 e
回叫方式就是通过函数调用对话框。生成的文件里会有一个函数叫什么function的,里面有调用对话框的示例代码。
/ h. w3 B7 }8 W) G菜单方式是通过菜单直接调用对话框的方式。比如下面的菜单4 }/ `& I6 ?( d$ X) o0 L
VERSION 120$ U% D( W+ U( s+ ^
  EDIT UG_GATEWAY_MAIN_MENUBAR' u2 k1 I" N/ D2 F9 b- F. [  V3 P
  BEFORE UG_HELP
; F, @4 v& p5 f$ G5 |7 J' n    CASCADE_BUTTON UISTYLER_DLG_CASCADE_BTN( ?  t# Z! {+ K7 Y/ \' y/ Z
    LABEL Dialog Launcher, B, X6 p' I. @% T( C
  END_OF_BEFORE$ e, F8 [. G% ]0 J, Z
  MENU UISTYLER_DLG_CASCADE_BTN, P1 Z2 O. d8 e6 {! t- L
    BUTTON MY_BTN
/ I# r' ?1 \* q: U1 j* x! d    LABEL Display my dialog" ?8 w4 ^: p. Q. w. P- E9 o
    ACTIONS my.dlg# ^) w/ m' E! W& x# B
  END_OF_MENU" f: A# c0 t* p- d; @, |0 t
另外,最好在英文界面下做UIStyler,否而会出现莫名其妙的问题。比如中文字符变量等等。
' z6 K4 M+ T8 G3 P3 V" |7 c下面是转载的别人的文章,各位参考一下吧。
; m9 `  H& d. V# X  q% b1.创建目录并配置环境变量* @$ O6 x& v0 \" j' ]  f" l8 m
(1)自定义创建。
# j/ l# U% ~8 W! _; l, S创建一个文件夹如D:\UG_OPEN, 在此文件夹下创建二级文件夹D:\UG_OPEN\APPLICATION和D:\UG_OPEN\STARTUP。$ N! f$ z3 E) b* B! M+ R
打开ug安装目录下的UGII中ugii_env.dat文件,修改UGII_USER_DIR下的路径,如UGII_USER_DIR=D:\UG_OPEN,并去掉前面的“#”。
. c+ K% m8 V7 g: |& X(2)第三方创建。& Y& b6 _0 f1 N5 w" Y6 v: F
找到UG安装目录下的UGALLIANCE下的VENDOR文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。
" Y' [# S0 z# _1 A5 l: i6 C6 T9 U7 j: q* U打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_VENDOR_DIR前面的“#”去掉。1 F* f( f2 O: e; e
(3)系统自己创建。7 G' @* t- p- u# r* t( K9 n
找到UG安装目录下的UGALLIANCE下的SITE文件夹,查看其下是否存在Application和Startup文件夹,如果不存在则创建它们。
8 z6 s6 T( W' p$ a" H打开UG安装目录下的UGII中ugii_env.dat文件,将UGII_SITE_DIR前面的“#”去掉。* S" Q( y% F' S; _
这三种方法的区别在于系统启动时加载的顺序不同,依次为site,vendor和用户自己定义的。- j( c# o9 X/ x# e$ P
本文采用第一种方法。7 g3 Y; n- k  a* t) C& M
2。UIStyler设计' X" C- y0 T+ h. j2 ]. Q( y8 v% [. X
(1)打开UG,进入UIStyler(主菜单Application下)。
% k8 {! R+ X  O# C  W7 ^+ n: k. [(2)界面设计。0 i  o4 e, ~+ z$ J9 Q: p
(3)保存至刚才建立的application文件夹下,此时会出现三个文件,如下图。% S/ Q' E! o, j4 G

7 }* m6 D' o8 p3。建立VC项目
9 f. H, S- a2 X$ @9 j(1)将刚才生成在application目录下的头文件和源程序移到VC工程所在的目录下,如D:\SOURCE。9 b4 R) M  Z) f/ z
(2)新建一个工程,选择Win32 DLL,选择创建空的DLL。
0 A% t2 P) d5 \8 C+ F(3)将头文件和源程序加入工程。; D% l3 g# q! n4 p0 ^- _
% j3 k3 `; n/ p# ?
4。设置VC环境
* S* [6 T& z, P5 |. N2 p  P' K(1)选择菜单栏上的Project->Setting->C/C++,按下图进行设置,主要试讲头文件引入工程。
* g* `* a% p' N8 P' O) S6 B" x+ `
+ `6 b/ E; v% v(2)选择菜单栏上的Project->Setting->LINK,按下图进行设置,将两个LIB库引入工程(UG 18以上适用)。
) O- v* B/ }( m+ e3 _6 j$ T
' ~8 T! B0 k, u5 t其中输出的文件名可选择路径D:\UG_OPEN\application,其表明系统启动时不加载这个二次开发。也可输出的文件名选择路径D:\UG_OPEN\startup,其表明系统启动时加载这个二次开发。
2 f- _% k% C8 M  e$ B3 S/ W(3)选择菜单栏上的Tools->Options...->Directories,按下图加入库文件。9 C/ l# ~$ l% e4 A5 B/ [
5。修改源程序" }5 y; v5 A+ X) w) `/ r; F. n* r
(1)打开源程序,找到MenuScript样板所在,拷贝这段内容,并保存到D:\UG_OPEN\STARTUP 下。注意文件名的后缀应为.men,文件名可随意取.
! S/ z9 K- O! p8 z/ i& ^7 tVERSION 120
, T( @1 g  R. l/ d% f$ m  EDIT UG_GATEWAY_MAIN_MENUBAR
  x8 `7 ^+ d6 b8 z: y+ N& t  BEFORE UG_HELP% g  G6 c! I5 `" @+ n
    CASCADE_BUTTON UISTYLER_DLG_CASCADE_BTN& ?4 U6 _3 r% H- j1 k9 M- y
    LABEL Dialog Launcher- k8 y# v1 S4 @) P# |" J
  END_OF_BEFORE
" n5 n; @1 p* W0 ]! |! m) h5 }0 ?  MENU UISTYLER_DLG_CASCADE_BTN( g$ f( H- i$ U( R- [& O8 I
    BUTTON MY_BTN$ b$ Y: R3 t$ ?
    LABEL Display my dialog# Z8 f0 @2 x5 @& f8 R
    ACTIONS my.dlg
" W! x8 T' U  \  U  END_OF_MENU9 _4 V/ x  O$ m1 B# d! C
4 U" D: d) D! A3 E1 j) b6 g
(2)找到程序中“#ifdef MENUBAR_COMMENTED_OUT”及其配对的“endif”并删除。
8 |/ B7 v; N* ]) ^$ d. [+ j; S% m- r2 B" t
(3)找到程序中“#ifdef DISPLAY_FROM_USER_EXIT”及其配对的“endif”并删除。注意不要删除这两项里面的程序。( ~0 {: ]( p: y+ n' u& X

6 P0 Y$ a% Y9 [& q7 x(4)在将刚才“#ifdef DISPLAY_FROM_USER_EXIT”下的语句中的“<enter a valid user exit here>”改为ufusr。
; A  O8 h$ d9 e# d" d% X/ x(5)编译程序。
4 q  p+ U' n# d9 z- m7 H! X) P8 C6。打开UG,可发现菜单栏上多了自己开发的按钮,至此大功告成!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|关于我们|sitemap|小黑屋|Archiver|手机版|UG网-UG技术论坛-青华数控模具培训学校 ( 粤ICP备15108561号 )

GMT+8, 2024-11-15 16:43 , Processed in 0.053557 second(s), 24 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表