PLM之家PLMHome-工业软件与AI结合践行者

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

  [复制链接]

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

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

gamnson 楼主

2014-3-23 18:10:14

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

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

x
版主您好,NXOpen C++中,如何实现调用依次调用两个自己设计的对话框?(点击第一个对话框的OK按钮后弹出第二个对话框), G' V# Q- ~; z7 w2 J. V) O, 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

当然可以
: Y% D/ j0 b0 G3 V很简单的# k$ y& d: J. d! M* @5 l+ N
# Z" r: @  a2 L5 v/ d; m' o$ ^
分别创建两个对话框
% R8 [. f+ ^1 p1 u$ s; B8 D' \1 X1 S. A- v
在另一个里面加入头文件 和  apply 方法中加入 3 P" M% G1 Q+ J- e+ [, |
- f: ~1 B7 q! c9 q: J  l  `1 @
另一个对话框的 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头文件及成员函数定义都没有问题)
2 ^& d4 {3 }, t2 ?3 k4 Hint dialog1::apply_cb()
. w# d; v* p0 B/ U- K% v3 Y2 A{
+ N# v8 r, u2 ^4 n5 Q" e$ w9 L* A9 F    int errorCode = 0;; m* [, L( V: H) K  y; e( B9 U! Z! y
    try
4 |- C7 L! P9 E% P& i! A7 k    {
0 Z* W+ i6 W: ^* ?5 I0 X% X        //---- Enter your callback code here -----( \! Y! ~! A$ S2 R
                dialog2 *thedialog2 = NULL;//添加了这三行
1 U0 R; Q. X4 `+ B3 l2 v" C                thedialog2 = new dialog2();//添加了这三行
/ c8 P  E  A% F% ~8 D                thedialog2->Show();//添加了这三行3 `# W) @2 E4 u' j  S% X- \
    }
/ Z& U' z! m2 A! w, u( h    catch(exception& ex)
& a) {  G0 ]6 ^4 Z' r+ w    {4 c" ~* B# C. O
        //---- Enter your exception handling code here -----+ g1 F- q; A. U  r1 @
        errorCode = 1;; L$ q/ M( y$ H: P) a
        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());9 b$ a/ |  g7 N4 A$ w/ }$ t
    }6 d' M' r4 A  t- P+ M, s" X. C
    return errorCode;
1 L& W' I* j7 b! X, K}
5 K: b; s6 f2 l6 e( h: b
% l. M9 a  k. H- O- F) \3 L+ V//------------------------------------------------------------------------------
# V$ {4 P/ R8 Z6 z//Callback Name: update_cb7 `. {* m! i6 _3 m2 P
//------------------------------------------------------------------------------2 `( Q6 I, E& x0 {1 x! w- b
int dialog1::update_cb(NXOpen::BlockStyler::UIBlock* block)
6 I7 w0 k: _8 m( ^5 Z3 S5 v0 u{, D- ^) n! p# j' T( p, `
    try4 b) U3 R6 G! Y) k8 o2 E/ N
    {# S. \: M0 j; Y' G0 x
        if(block == double0)
3 f( N- |. [; a$ Q  E& d        {3 O( v0 B& f; R  t* Q' G2 O
        //---------Enter your code here-----------( T# Z# o) E/ x- b
        }& V# i/ B3 n9 P
    }
4 B) Z- A7 B+ U8 |- d! {; m    catch(exception& ex)( M# ]; [7 W. |+ L- G
    {
. \1 _! j) m" M/ g/ Z* E        //---- Enter your exception handling code here -----8 n' [) ^: E  Z" @' y8 B/ a+ R
        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
+ y& r8 N3 g$ f5 K" e8 x5 G$ q    }
1 t6 E0 S: D2 [. M    return 0;
* a/ H2 O: c) w4 u- l9 z2 a# B- a}
4 R& k5 J3 L+ A
上海点团信息科技有限公司,承接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$ V+ {4 e% ]$ _% o) @
当然可以 ! `5 j) ~2 h- h4 @8 ~* b2 _: v
很简单的

: t& _. @# S; L  R* ^. F' U" b  V) o9 s  x
mildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题); j' k/ v# p* C% n! u, }3 `0 c
int dialog1::apply_cb()7 @3 x' {3 b  q& F
{
4 I$ x9 D$ N* [- g    int errorCode = 0;$ |+ Z% R! j: M) m
    try
0 V9 L5 I) K: g1 W* K* E7 f    {1 [' o; f$ j9 }5 j- x
        //---- Enter your callback code here -----2 I5 A" b/ s1 Q
                dialog2 *thedialog2 = NULL;//添加了这三行" W- |; f; E2 j. D1 T
                thedialog2 = new dialog2();//添加了这三行
  q8 q6 P! Z7 k% l$ v7 V                thedialog2->Show();//添加了这三行
9 [# [' B( E. ^% D+ k    }
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了