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

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

  [复制链接]

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

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

gamnson 楼主

2014-3-23 18:10:14

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

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

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

当然可以 ! D& t3 W9 u) K3 C" H0 _/ Q
很简单的
0 ]  J2 j! e; [8 e8 C5 m; Q) X7 N+ O# \0 D2 [* O1 n) z
分别创建两个对话框
5 f6 Q& V6 H7 A) Q+ X3 N1 F- L8 N1 Q9 ^! U
在另一个里面加入头文件 和  apply 方法中加入 4 _4 X- x3 G8 ~

/ g5 [1 _0 X" I7 R9 n另一个对话框的 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头文件及成员函数定义都没有问题)) [' }$ P2 J& }& Y( @; i
int dialog1::apply_cb()9 ~* T/ z8 M* T) v9 [$ k4 m
{
6 s* B" F# k: Y: O' X    int errorCode = 0;
/ ^9 w2 _& h4 P- A$ s, \2 i    try) C# r; D. ?3 l
    {
# R" }' [7 S: s4 _2 z" B+ S        //---- Enter your callback code here -----
2 \6 w. t1 o6 [( h1 D5 g                dialog2 *thedialog2 = NULL;//添加了这三行+ y% R% ?9 d/ `# A  c+ B
                thedialog2 = new dialog2();//添加了这三行* ^) a4 x$ v1 c/ n8 k
                thedialog2->Show();//添加了这三行
0 S. D) \: m( S  l- B    }
* R. T$ w, H1 y( ]& y# X    catch(exception& ex)/ t  \! B3 U8 v
    {
+ W6 `; g) o9 ]5 {        //---- Enter your exception handling code here -----5 f( o! t: K3 ?7 |6 I
        errorCode = 1;
7 n) g5 {! f2 s1 ?$ s/ {        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
( V4 i+ C; y+ |- H2 p    }: J2 j9 F' L* a: @& D
    return errorCode;6 G" K% a% h. }; A3 h+ r
}0 j1 g- U- t# o) {& \
. L1 [+ j3 o5 M( x: a; U
//------------------------------------------------------------------------------2 O5 Y! x: w! y
//Callback Name: update_cb
  O: h/ i, `- ~, y+ i; J" S) B//------------------------------------------------------------------------------
( l. x: t2 g: }1 _4 M# j4 I% \int dialog1::update_cb(NXOpen::BlockStyler::UIBlock* block)
% a6 V. M% W4 v! m{
2 ], w" K( e' A7 j    try: f$ c& ?4 T( B. j
    {
1 |  I8 K2 o- g+ s        if(block == double0)
0 b% T& m( c4 J( C0 [. [        {4 N) n6 T' N. N/ F7 P( ~/ j
        //---------Enter your code here-----------4 c0 G+ d- C( d2 w. y
        }
/ Z: Y& T& A  {; F4 D8 _    }
# a4 a' R/ }8 F  c3 Q    catch(exception& ex)
3 M: J- W! F8 @% }$ G8 M  U    {
: C! L, m) y5 e; h5 S        //---- Enter your exception handling code here -----
8 A; A) m  \& u7 Z4 {2 X7 m        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
) ]& ~, K% N6 A- B    }6 h* i) U9 Y) H, g& G4 ~; b
    return 0;
# w+ B- M$ g0 ?8 V}4 q9 o1 w4 S8 N, N/ O2 R! ~
上海点团信息科技有限公司,承接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
+ A! S- U. e: M! p4 O! y3 g当然可以 & E: U* K) n* g2 d& \2 ~
很简单的
  V( [8 K% ]8 k2 m# e

- r* s3 Y) S2 F5 m6 q5 F; wmildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题). z$ E; u; o  r& t
int dialog1::apply_cb()
5 @- ?+ d  f) Z1 e5 ]{& K* ~, u& v( q9 u3 G
    int errorCode = 0;, b) s1 b0 k5 S, X7 n
    try
& X& z# a/ s# }) |    {
6 _% {! R2 ]) {0 m$ N5 B2 A        //---- Enter your callback code here -----: y( Y3 d5 f+ @/ \) W5 k
                dialog2 *thedialog2 = NULL;//添加了这三行' \+ a8 b( t) `! O
                thedialog2 = new dialog2();//添加了这三行
# J& r# y4 d5 i                thedialog2->Show();//添加了这三行
% S4 p5 j% a. U! Z    }
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了