PLM之家PLMHome-国产软件践行者

[已解决] NXOpen C++如何使用两个对话框

  [复制链接]

2014-3-23 21:50:55 3753 3

gamnson 发表于 2014-3-23 18:10:14 |阅读模式

gamnson 楼主

2014-3-23 18:10:14

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

您需要 登录 才可以下载或查看,没有账号?注册

x
版主您好,NXOpen C++中,如何实现调用依次调用两个自己设计的对话框?(点击第一个对话框的OK按钮后弹出第二个对话框)
1 m' x# X/ V# `/ G
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复3

mildcat 发表于 2014-3-23 19:48:25

mildcat 沙发

2014-3-23 19:48:25

当然可以
8 a- |; A* S6 M' p  t9 N6 C- a很简单的$ s( [* h2 Q1 t) W- j

; M- c3 i/ g0 Y4 \+ ^+ C分别创建两个对话框) e3 ^7 \; ^; F# B
9 L$ d3 V& w) v" a
在另一个里面加入头文件 和  apply 方法中加入
6 v& u$ R- ^- X# {1 [' U
, A1 u0 b) i# t3 A& T  u另一个对话框的 show 方法
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

gamnson 发表于 2014-3-23 21:32:53

gamnson 板凳

2014-3-23 21:32:53

mildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题)
& }# z: [8 D* E5 k3 m) hint dialog1::apply_cb()& a' M) e1 P  }- Y
{: J% z6 N9 _- R1 N6 S+ M4 Z% P
    int errorCode = 0;7 ]) X  |, m8 B0 U' O8 X
    try# O2 E" W, w$ |. k- T1 D5 R
    {
3 m& {0 W: \# p( ]        //---- Enter your callback code here ------ q1 t* h1 F* u# }, H* X: P- L
                dialog2 *thedialog2 = NULL;//添加了这三行
2 O) O( i4 o, X3 M- K) E: m                thedialog2 = new dialog2();//添加了这三行% Z6 A* W2 C5 u7 n5 c( m
                thedialog2->Show();//添加了这三行9 R% ]3 D% {* y+ N; h) }* \
    }
1 s; a( `1 n) b2 r6 ?4 z    catch(exception& ex)
: c0 i6 R9 h% g0 ?( D    {
% }% n0 F* F, W7 K        //---- Enter your exception handling code here -----3 n/ `2 z, g; X: j4 V$ ~7 p
        errorCode = 1;
& l( ?0 @  c2 d7 k1 _8 z6 |        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
2 N, e6 i5 L* C$ L/ n+ K/ Q    }8 K6 @$ i2 F1 M  D: L$ ?7 J  W
    return errorCode;
3 H0 T( P  ~( V% f}
: K0 C6 }5 P3 }2 ^7 y: K) g: c) M6 V1 w% N2 j4 @9 j6 B, D
//------------------------------------------------------------------------------; C, X$ W, y) i% h; N4 L
//Callback Name: update_cb
6 u' K  z! k# H  A7 A0 V& j//------------------------------------------------------------------------------" j) S+ C0 W% @, V/ n
int dialog1::update_cb(NXOpen::BlockStyler::UIBlock* block)( Y- L/ h2 o* V7 M. n1 \# c
{
1 f6 }5 g3 ]0 t5 A5 X7 {    try
' ]! u( U! j3 U7 U- K1 p. \) N) Q    {) j! N2 o5 K: o" V# Q, L
        if(block == double0)
. e( V* j" v3 b; _: P6 ~0 x        {
& H. A3 C7 k1 Y* {& C+ h        //---------Enter your code here-----------
6 a5 u, m' b0 {  K1 X0 |        }
' E( ?) `" R7 J  @4 o& h% X  }0 S    }
/ p+ g! W2 `5 q  t( ~8 [    catch(exception& ex)
6 g1 m0 o6 y% B0 }    {
4 R- G/ {/ m1 H, A# j4 o" ^        //---- Enter your exception handling code here -----
) p3 B6 H% o0 z, C        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());* k: H4 y' S7 A3 K
    }/ D, K0 y( z% [( ]) U0 S; z
    return 0;1 t5 D( t0 z: B3 j* u/ l% ^3 ]
}* V* M5 U4 {6 S: V# o
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

gamnson 发表于 2014-3-23 21:50:55

gamnson 地板

2014-3-23 21:50:55

mildcat 发表于 2014-3-23 19:48
6 q2 ~( W+ f- y当然可以 ! J$ b& f# o& G* m7 G" W5 a9 b
很简单的

  u% X# U: G! j/ Y) p1 A" M( d
; M0 H5 D5 z3 z4 W, l0 ]  vmildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题)
( h' R8 r5 j0 m; R# zint dialog1::apply_cb(); u3 F9 |9 b: U& f6 P! ~! |1 W
{  q6 h8 c  |6 C. ]1 L
    int errorCode = 0;5 |/ i" Y! H+ N( R' n3 Y* Y
    try5 \9 V4 A. A. H9 S3 \/ r0 e
    {
" r; R; v& B& i! v9 i- n9 ~1 C        //---- Enter your callback code here -----/ ~: Y7 V* ]" o% l* q9 R7 L8 T8 `
                dialog2 *thedialog2 = NULL;//添加了这三行
9 p! P5 {7 u% \                thedialog2 = new dialog2();//添加了这三行5 s5 a: s, Y) A) j) @7 s7 h2 S2 R' U
                thedialog2->Show();//添加了这三行' @5 I+ t. {7 E  \. m% g0 s
    }
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了