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

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

  [复制链接]

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

5

主题

9

回帖

47

积分

新手上路

积分
47
发表于 2014-3-23 18:10:14 | 显示全部楼层 |阅读模式

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

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

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

使用道具 举报

全部回复3

320

主题

226

回帖

9784

积分

管理员

PLM之家NX|TC专家

积分
9784
发表于 2014-3-23 19:48:25 | 显示全部楼层
当然可以
6 d  U3 b- D6 `; k很简单的
% Y- L, ?3 Q$ i& T6 t) E: A6 \6 y8 ?+ Q4 F/ e  k& `) v/ @
分别创建两个对话框5 }2 J% e3 h. N( n4 T
: h' y3 r" s1 s( o& U
在另一个里面加入头文件 和  apply 方法中加入
  ~9 Q3 T) ~7 \+ V$ y2 h3 z; y3 t8 @0 L$ }" u* [* Q+ y: t
另一个对话框的 show 方法
该会员没有填写今日想说内容.
回复 支持 反对

使用道具 举报

5

主题

9

回帖

47

积分

新手上路

积分
47
 楼主| 发表于 2014-3-23 21:32:53 | 显示全部楼层
mildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题)
# w- t8 a8 `) \; yint dialog1::apply_cb()! ^- B2 w% N, L9 A3 D$ z+ u
{1 d+ [% ~' l: m! \; Y2 ~7 J& C
    int errorCode = 0;+ e- w* l; D; m( B8 f* v# e
    try
5 C' ?8 l) d6 ]5 ^    {
' P, D+ S8 [1 T, X$ d, g+ L        //---- Enter your callback code here -----
: N$ f& F9 r) X! _                dialog2 *thedialog2 = NULL;//添加了这三行* a4 o+ b! h5 F8 F) h9 R  A" Y/ j
                thedialog2 = new dialog2();//添加了这三行
% w  N3 U. g1 ~9 ~+ Y& W  |8 m                thedialog2->Show();//添加了这三行
$ P& l$ l) d" z! n/ F+ o    }2 z4 w, _& c# Y4 u
    catch(exception& ex)
5 A) Q, h( ]+ g. O. d/ \    {
" {& ~6 y/ Y4 {+ J8 E        //---- Enter your exception handling code here -----! a* F2 C  d( E4 Q" c; N, @2 B: [% z
        errorCode = 1;
. H) b, Q6 s0 v( H4 M. [, _        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());' k9 U, ]+ [4 [3 t2 {3 P$ o
    }. I+ e9 S$ I$ `% w' `- v
    return errorCode;" L! y2 L( {; N
}' H2 f1 H! R) X& m: _
+ g$ E' S: U/ w9 `; L2 x
//------------------------------------------------------------------------------
  u( p5 I# A, }6 A3 `- n  Y* l' t$ G" o//Callback Name: update_cb
8 A+ `/ y1 q) M8 Y//------------------------------------------------------------------------------
( |7 t4 c4 W. e$ ?# d. \) Fint dialog1::update_cb(NXOpen::BlockStyler::UIBlock* block)0 e- g& W, {3 p
{
8 B* ?' V. K4 b+ ]" M    try
4 l* x7 D0 x/ E# M% ^% Q    {
# h* ^4 ?# Q$ p  P        if(block == double0)
; A  k7 Z9 c9 U+ ?4 N        {# [/ q& ^/ I5 W9 L7 x
        //---------Enter your code here-----------$ R) `5 [( w! ~' b
        }7 o3 P* I5 u8 |3 G; C1 c
    }
, r! v7 v: K6 e9 f7 A    catch(exception& ex)
, {7 \1 z* p2 z; P4 |7 {8 r    {
/ ~5 H* x* X* M" O7 P( A! e3 @  c        //---- Enter your exception handling code here -----
0 h3 g/ `! k. n% x" U. D; {7 `        dialog1::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());
) V/ y% [' ?4 E$ R    }- [. P$ P/ i& B1 S2 P7 W- r' H" l
    return 0;
. z" ^' Y( m! A* w/ A: t}
6 @6 i3 m; u$ r7 E! C
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

5

主题

9

回帖

47

积分

新手上路

积分
47
 楼主| 发表于 2014-3-23 21:50:55 | 显示全部楼层
mildcat 发表于 2014-3-23 19:48$ S. o2 f& f# ^
当然可以 + z. [/ Y$ z  I1 Z/ t
很简单的

  m+ M) K9 _) ^
! F$ e; E1 \* u5 }, gmildcat您好,我加入了第二个对话框的头文件,并在int dialog1::apply_cb()里添加了show方法,编译没有出问题,但运行程序的时候点击dialog1的OK按钮后跳出一个错误信息:cannot launch the dialog。请问这是怎么回事啊。(dialog2头文件及成员函数定义都没有问题)
8 b& ?/ E5 J8 N5 l1 t) Y* }int dialog1::apply_cb()
- o( E* @4 v2 a% c/ X3 i{' a3 l3 D% q/ U2 A# S
    int errorCode = 0;% {5 K; _# i7 e. W
    try( C4 a  g, ]) O4 Q. N
    {
) ]- L8 b$ p# L) @! [        //---- Enter your callback code here -----
, T- C' @/ C9 O                dialog2 *thedialog2 = NULL;//添加了这三行
) }% W+ S: }; G: ]( g9 e                thedialog2 = new dialog2();//添加了这三行' v7 j$ j+ k' h' x/ O3 s5 \8 e+ N5 \9 F0 J
                thedialog2->Show();//添加了这三行
3 ~$ c: i4 j9 Z2 `: p! O, z    }
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了