PLM之家PLMHome-工业软件践行者

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

  [复制链接]

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

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

gamnson 楼主

2014-3-23 18:10:14

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

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

x
版主您好,NXOpen C++中,如何实现调用依次调用两个自己设计的对话框?(点击第一个对话框的OK按钮后弹出第二个对话框)
; v, X! o( C$ n
上海点团信息科技有限公司,承接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

当然可以
9 O- F! H/ p0 s3 }2 T很简单的, x+ w6 h& h1 i: B% ?8 G
  {) X* ^4 l, `8 e4 C7 x1 G# g
分别创建两个对话框+ W8 P. k) Q. _$ c( d9 a
. c4 S# C. v8 ^+ m
在另一个里面加入头文件 和  apply 方法中加入 " J, k8 ]# w7 w0 h2 m9 B
) ]; M8 U  A& F- E
另一个对话框的 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头文件及成员函数定义都没有问题)
. ]+ |6 {) x) Q9 lint dialog1::apply_cb()
+ `0 D' Z/ E9 Q2 ?( n' {{" j4 c$ ]6 u: a* p+ Z- ~1 [
    int errorCode = 0;
( K: k& `; h  _- Z    try" I4 d: w" b) V
    {- _' O" x+ ]- \9 C) q( y5 h
        //---- Enter your callback code here -----$ O7 [1 v9 V: G; \2 ?7 w4 {
                dialog2 *thedialog2 = NULL;//添加了这三行; b9 ?( C/ Z9 n/ S
                thedialog2 = new dialog2();//添加了这三行' T* d. k: ^8 w6 |2 a. R
                thedialog2->Show();//添加了这三行1 c0 ]$ g5 N5 b1 X3 N" T" h
    }7 z0 V* v. T+ m6 q+ o  |' |2 ?
    catch(exception& ex)
  t. N( K) {! G9 ~    {. M- d& S# @( n) `2 h
        //---- Enter your exception handling code here -----
+ s0 W* M. {/ e* M6 U        errorCode = 1;' J4 i) ^$ }* P  R- a  ^$ x/ N
        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
" e0 I* Z/ Y: Z0 g8 \    }
! ]: t, v, J0 o' C" M5 N, _$ D8 y    return errorCode;) s3 |" A' L0 J6 }/ H- c* m% r( G
}
& c& o6 N* A$ L% @& A: m9 n" \! h' {# _
//------------------------------------------------------------------------------
& X% t# ], k1 @0 L2 O- A% ^3 r//Callback Name: update_cb
" B/ l* W2 x9 K. F//------------------------------------------------------------------------------
# v* Z8 j4 Y& _+ ~7 I# `( Vint dialog1::update_cb(NXOpen::BlockStyler::UIBlock* block). K. o& n. y1 I2 E9 _0 t
{
" N% s5 {3 h9 P' k6 ^" L6 [$ G    try( E0 v( u" P  U7 R3 z
    {
& |2 T- ?0 A" p, |+ r5 Y% e        if(block == double0)
6 z6 h; r0 e, S# r! Z        {* ]2 v" ?, z5 y* t1 G4 j( l& v
        //---------Enter your code here-----------
5 I; o$ e: U" w: K        }! d& x  b% R5 R) z/ x
    }
  m' H1 {0 C( v3 j  s" T1 r) ~    catch(exception& ex)) I: h1 W0 S1 [3 ?+ l, p
    {, @/ F  E2 w: |6 ^. f5 f7 ?
        //---- Enter your exception handling code here -----
) L) i2 w( E+ g" ^# W3 C* A8 V. ?        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
$ R" w. [' M- @6 B    }+ h2 Z: z: A  @: h! G  R
    return 0;
1 Y: V/ R9 m3 Z9 w6 z}; D) U9 f7 h# X4 Z
上海点团信息科技有限公司,承接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# Q. _2 l' U' x* K3 ~
当然可以
+ y- V5 Z& C) ~  e: H很简单的
4 F4 S2 Y7 q9 b( R; W& u

: C  ]' x8 x3 O' k1 s) C+ B8 ~mildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题)* v$ f" X5 p$ b  z
int dialog1::apply_cb()9 g: G5 j# C7 X1 P
{
3 k) A0 d! Q( V+ c  _- b, N2 K    int errorCode = 0;
# j/ f, a2 U! x, ?8 ^3 L    try9 ~; I2 k/ a1 U7 r  Z; E
    {; P$ g! y' ]+ f& z2 H9 e
        //---- Enter your callback code here -----$ Y% F6 U1 i* v. @; w2 W9 a. a6 ~* k# m
                dialog2 *thedialog2 = NULL;//添加了这三行- y' o* r* _0 m
                thedialog2 = new dialog2();//添加了这三行
# H+ }! R& Z; f+ H' p1 C1 w$ x) X                thedialog2->Show();//添加了这三行( ]* ]+ G9 i1 p9 z! W) D* n6 z! h
    }
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了