ProE二次开发入门实例
1. 创建项目
这个就不用多说了吧,新建-> 项目->C++->MFC DLL
2. 项目配置
这个可以参考我以前的一篇文章:P⑹ENGINEER的二次开发(5)-Vc环境配置
3. 初始化菜单文件
在这里,先创建一个菜单,作为演示,:
(1)在住文件添加Pro/TOOLKIT 头文件。由于在后面的操作中,都要用到这些头文件,故将头文件放到stdafx.h 文件中。77777777777777777777777777777777777777777777777777777777777777777777777777
⑵添加Pro/TOOLKIT 程序的初始化函数和终止函数,
return TRUE :
} … 『 extern int uier_initi alii e fint
j char* 』char* j char*
* v char_t 电rrbnf [so ])
r eturia. L ;
】
初始化函数
t 匸L X' r?id
e
终止函数
⑶创建一个窗体:右键单击解决方案的资源文件,然后点击添加Dialog,如图:
ms?
零 Accelerator S§ Bitmap
Sfe Cursor S HTML
FJ Icon 自 M@nu
*fc Strrg Tatile 到到 Toolbar
Ol \ ersion
蜀 Resource.h
? stdafx.h g zenun,h
3 TestDelg.h □
资潺立件
3 zenun.rc 31 zeraun.rc?
IS ReadMe.txt
刀解"??丨马类…国熒…
3.
(4)添加一个按钮,然后双击添加类向导,创建CTestDialog 类,然后再窗体中添加一个按钮,做测试之用,如图: ar gc argw[] versi on
b^ili
(5)双击按钮,添加一个按钮单击函数,写下一下代码:
void CTestDialg::OnBnClickedButton1()
{
// TODO: 在此添加控件通知处理程序代码
AfxMessageBox("Hello ,Pro/e second develop!!! -----");
}
4. 创建菜单
(1)将窗体头文件引入到主程序中,添加一些必要的声明定义
//添加初始化启动函数
//这里附带将菜单的实现部分加进来
//定义菜单的命令函数
//1.窗体显示函数
void helloFormFn();
//2.用户菜单访问权限设置随时有效
static uiCmdAccessState helloFormAccessFn(uiCmdAccessMode access_mode){
return ACCESS_AVAILABLE;〃设置全有效
}
//3定义全局对话框变量
CTestDialg * hellodlg=NULL;〃窗体界面,后续更改
(2)接下来,开始写菜单注册函数了,具体的都在下面,:
"C" ini 口《r_i ni ti ali xt (int argc
* char* argv(] f char* ver 5 i on. ¥char* Jbuild ,wchar_t errbtif [80 ]) 1〃用来存睹资源信息文本的宽宇符变量
FroTilfrMwe IMsc
PrcfcErr or status: miCmdCmdld uiCftdBtnl:
FrnSir ingT n g g**〕:
顶細萊单
S t atm—Pr oil anub oz* M Ga '
.82打和资谐立本相問于工具芒資
?FM_B_THVE
加登抽慕单ita.tixs=ri wCmdActi oiiAld hellvF urm^?(uiCndJCn JAc hello Fui nFn
u 1 Cm JTr 1 uD e r ukil t
(niCikdAcc?ss Fn)h?lloF CEE sFn
」rsc_5_muE
J;
x t itus=fr oM frnub ar m tnuFushbut t onAd4「畀sr"
‘■Mir
」gio"
.KULL
PM_E_TRUE
,niCmdBt.nl
/話
e turn 0;
eKtern "C" voil tvfli dj
[
WI_NIAUAfiE_STWE OlfxGe tStiti aMcdulfiSl at a ()):if(h?iiQ'ii£!= imu? { hfrllcdl^;
r AS示测诃对逮櫃显示画数void h?llof ormfnO f
WI_MmCE_STWE (KfxGt tSt^G t ());
if(Stllo.il == WLLX|
lullodl|F4L?w CTtitDials 0: hellodlg-Xreit^(IDD_DI心G1 】;k.11 &dl?- >£l0w W i nlow e^_£HDW );
1
?lse [
delete hfrllcdlg; lullodl^LW CTflstDlfileO; hell&dle-Xrefl.ttttDD_DIALO(}l^: hill o il^- >5lto w W i
nlow SHDW1
)
WsrAct j vit eCurr^ntWindow ():
5. 生成Dll文件
右键项目,然后点击生成,即可
6. 编写菜单资源文件
在项目目录下创建一个text文件夹,然后再在里面分别创建chinese_cn和usascii两个文件夹.再分别
在里面创建一个文本文件message.txt, 内容为:
Gear
毕业设计
#
#
Hello
演示测试效果
#
#
演示测试
演示测试
#
#
7. 注册到Pro中,
详细说明见Pro/ENGINEER的二次开发(10)-注册到Proe
最后,见两张示意
图
玄件⑹ 镐辑(目视軾込?A(n分祈㈤信息也;应用程序側工具□)毕哑设计宙口cm 肅助出〕
| □ eg JH爲%Q | o c茁智屆葩品口*「囱”钱毀Q回f
荃文件夹辱航器
;■进程中
>鼻共拿空间
? 口www-61&b31T65OT ”
卜㈢(CJ
j l_j TEHF 6:)
LJ SEECICLE.BI
> |_| ASFw mb
” |_J Backup
I - I p 2J收磁
| I ; □ gSWl
_J vzlt-tj 61 ' I 仇垃
GreeiiScpf t
THPhott
zuvuii% £i? Fx ¥i?iumc JS ¥wrnjrncr u nuxe Th!
丈件(B 徧韜世}视s(y)^A(i)分折(也信息型)应用程序(印工具CD毕业還计窗口(旦}帮助型)0El 昌Q Q J O O 电
应
El□f e>浏览器
巴L 15 r ----------- 1
屆trtl L_J
□曲A密傀弐回s
d-rt ci lest Proe Sec S
3文件夹导航寵
H
^
直
卜
-
-
-
-
-
d
逬程中
共享空间
7 TEMP D:J
JfSCKLE.E^
ASFwfel
我的文桓
vsPr oj e(
G-ftsr
GreenS oft
FHFrww
TegtButton
'.riion「E su阳」讦璃来卑朋俚
a
^.u ±IJ n UJE NGI