77范文网 - 专业文章范例文档资料分享平台

UG二次开发

来源:网络收集 时间:2019-06-11 下载这篇文档 手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:或QQ: 处理(尽可能给您提供完整文档),感谢您的支持与谅解。点击这里给我发消息

1。建立两个目录。

/ J9 F Q! T9 \\9 r1 D1 t7 n& Q7 k! ^2 _$ O# q4 M6 J

建立第一个目录 E:\\my_first_UG,在这个目录下建立两个新的目录:E:\\my_first_UG\\application和E:\\my_first_UG\\startup。

建立第二个目录E:\\my_source,用存放你的源代码。

2。设置环境变量。

3 P& m; A: ~! M# _(

再Windows中设置一个新的环境变量:UGII_USER_DIR=E:\\my_first_UG。

3。打开UG,进入UIStyler应用(在Application菜单的最后)。 4。设计一个对话框。

1)在\一栏填入:First Dialog,按Apply(每次输入完成后,都要按Apply,为避免啰嗦,以后不再提及)。

2)在\一栏输入:%??%¥%¥¥##*%*(*(*—*—((,什么都行,呵呵。

% O* p+ \\2 V: a6 w* }/ l8 ~6 {. n$ f. s7 V) H I5 [' ; I+ o [2 D6 F, o* [/ Z* \\& X

5 i1 I# _+ ^, B# k3)在\中,把CHANGE改为MY。

4)加入四个控件。String,Push Button,Label和Single Select List

: }3 M4 |+ \\) Y, p ~! h& k

编辑对话框的各个控件。

K8 \\! l5 G3 m% h2 d1 U3 a) L

7 T0 z; H! S\f6 F2 l& N1)改变String控件的标题,标识和长度。

+ v) [) t: `) E O8 {

Label “String” -> “Input an item”. Identifier \ Width in... 0 -> 20

) E( T% d- r+ s. i\

2) 改变Push Button控件的标题,标识和回调函数的名字。

& n3 D1 e% S\h/ Q

# W. j; `7 z& m' V& ALabel \

Identifier \ callbacks \

把\激活。

0 X' `# n' g; X' r, J* \\2 [

3)改变Label控件的标题和single select list 的标识。改变single select list可见项的个数。

7 `7 s& g( P2 G/ W, V4

/ L# L% T1 H( Z1 Z6 S- ?% d# FLabel Label -> Items List

Identifier \ Number 3 -> 6.

}9 y5 v# C' j% C( e! i- C6 y8 w% |

6. 保存对话框。

9 t$ G d% P3 y0 a m4 B6 b# d P! F6 n( L, e6 p( c: N8 ~

6 U* ~0 H8 w, S j点击save图标,把对话框保存在E:\\my_first_UG\\application目录下,文件名位first_dlg,生成三个文件。

$ Y# d. v5 r7 G( V-

(现在可以推出UG乐)。

7。建立一个vc的工程。

) w4 b8 v2 k! [9 v- X6 u9 s! |& W, W# p, T5 m

5 U9 T* s2 o. a5 ?: P

1)把\\application下的*.c和*.h文件移动到E:\\my_source目录下(文件可以改名字)。

( ?: c\

. T$ B$ x1 y0 r6 T* ~& `1 O3 |2)建立一个新工程,选择Win32 DLL。

3)把c源文件和头文件加入到工程中。

8。设置vc的环境。

1 ]/ v4 \\. G6 v3 b; E) n

Project -> Settings -> C/C++ -> Category ....加上头文件。

Project -> Settings -> Link....

改变输出文件名,加入连接库文件(ug17之前的库名字不同)

Tools ->Options...->Directories

! Q( w: j& k! |' n( E7 V: E' K. @9 j6 {4 a\

Include files 和 Libray files 加入UG UFopen的路径。

打开first_dlg.c文件,找到menu script样板的位置。

复制这个样板到一个空的文本文件。

3 ]4 o- T% f\ }

把文件保存到E:\\my_first_UG\\startup目录下,文件名位first.men(注意后缀)。

找到 #ifdef MENUBAR_COMMENTED_OUT,

: X- L$ e! Q5 G# i8 n$ Q' G- Q) w* b\0 \\2 P6 N\

把他和他对应的 #endif 删掉。

找到#ifdef DISPLAY_FROM_USER_EXIT,

把他和他对应的#endif删掉。

# z E& i* k0 @3 | a% B X% J7 j& x! w* Y* ~ c* S$ f

找到 , 把它改为ufusr。

现在可以编译连接,试一下了,呵呵。

0 [0 [( @6 h, M1 w6 F4 X,

运行UG,点击菜单。啊!!怎么不行??秀大了,呵呵

打开first.men文件,把ACTIONS后面的名字改为libmy_first(DLL文件的名字)。

现在一个空架子已经打起来了。剩下的就是要加入自己的内容。

就上面的例子讲讲下面这些回调函数(看清华那本书搞得我头大)谢谢!

5 y6 K1 Y- G: N, T* ~. i' G\

好吧,下面将一下这些回调函数的应用。

) ?6 w9 x# z: ~. T5 U |6 W2 h5 @; u( F

; A3 x- [) B; w

Apply_c,Ok_cb和cancel_cb分别是点击OK, APPLY和cancel按钮时,执行的动作,它们的应用在后面的例子中介绍。

) U9 t, x4 f' M6 R! S& m' ~

8 l$ Q8 D4 B$ [* b$ W: o& L: Fconstructor 和 Destructor本分别是对话框显示之前和退出之后执行的动作。

4 b' m& Y- ]* w0 `; J% B'

在对话框显示之前,可能需要进行很多操作,譬如说:设置对话框的选择方式,就是说在对话框打开后,用户可以选择什么物体,面,实体等。

5 I2 D2 u5 Y7 \\5 ?5 4 I6 N4 |$ |/ M) N\p8 V$ C/ I

在对话框消失之后,也需要进行一些操作,譬如说:释放申请的空间,把加亮的体恢复等。下面我就用例子介绍一下这些回调函数的应用。

$ t$ d9 n, c2 z' ]0

添加回调函数。

2 G5 @0 R4 v\[/ H9 ]/ ?#

首先进入UG,UIstyler,打开前面生成的对话框first_dlg.dlg,在相应的位置添加几个回调函数的名字(每一个都要回车或按Apply)。

. q5 z( L+ b+ p0 W

5 Q- o- Z2 ~& m+ p- ?cancel_cb

construct_cb destruct_cb ok_cb

% m3 d C/ t2 X/ ~4 L, k' ^

5 d# N1 O. z4 ~+ V为“Input an Item”田家一个回调函数input_cb。

/ _ J; U7 O% u% c. r; E/

保存后,退出。

时代码已经改变,要把相应的改变加到vc的工程中去,(推荐一个工具Araxis Merge)。

ZZZ斑竹辛苦了!

, R; d$ J0 J& N: K% T- b% M+ e% O

小弟正要搞一个UG二次开发的项目,以后有问题还请多多指教了:)

h& a( o! y1 k& ^! C, l

请问工具Araxis Merge哪里可以得到,可以简单说一下怎么用的吗,我VC还不太熟,谢谢

我的EMAIL:wgwang_sz@163.com QQ:43801603

打开first_dlg.c,找到construct_cb的位置,在其中添加以下代码。

- j, ~. G0 E7 W n R\N0 e8 y+ s

int MY_construct_cb ( int dialog_id, void * client_data,

* R# |) H g8 n' ~/ g- |

) Q- ^# g7 E8 C L' C* k0 k UF_STYLER_item_value_type_p_t callback_data) {

1 a# @- O: ~3 W+ A+ i

int irc;

UF_STYLER_item_value_type_t value;

$ J6 B# p! x t: J\ char string[133] = \

\

/* Make sure User Function is available. */ if ( UF_initialize() != 0)

return ( UF_UI_CB_CONTINUE_DIALOG );

+ v# n9 q* l. h4 r; x! t9 e2 p. o# K\

value.item_id=MY_ITEM;

value.item_attr=UF_STYLER_VALUE; value.value.string = string;

0 C0 b\b9 n& D) _

irc = UF_STYLER_set_value(dialog_id, &value); if(irc) {

char message[132];

$ j, Q6 n9 M$ l; l3 v: f\

8 V2 A; ~; {/ k$ h/ L9 f UF_get_fail_message(irc, message); }

1 X) v\

百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库UG二次开发在线全文阅读。

UG二次开发.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印 下载失败或者文档不完整,请联系客服人员解决!
本文链接:https://www.77cn.com.cn/wenku/zonghe/655591.html(转载请注明文章来源)
Copyright © 2008-2022 免费范文网 版权所有
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ: 邮箱:tiandhx2@hotmail.com
苏ICP备16052595号-18
× 注册会员免费下载(下载后可以自由复制和排版)
注册会员下载
全站内容免费自由复制
注册会员下载
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: