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

[求助] Block UI Apply的返回值

  [复制链接]

2017-6-19 12:34:17 3973 4

humanster 发表于 2017-5-26 17:05:57 |阅读模式

humanster 楼主

2017-5-26 17:05:57

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

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

x
版主:: @, v. C; L# u, d2 F3 T0 I$ W. G$ w
       问个问题,在BlockUI里面,如果界面上所有需要设置的Block元素设置好之后,这时候Apply按钮可以点击了* I. k3 c( v0 f1 t! I
但是如果中途我们判断有些条件不正确,不想让Apply执行完,就在中途返回,或者抛一个异常让Apply回调捕获,
+ x" ~  t! D1 P, `$ E$ v$ X' q       这时候,如果Apply回调的返回值errorCode是0,它会把当前界面上所有Block元素已经设置的值都清空(比如已经选择的面,体。。)
' ?8 i" u! h0 R  U4 z/ i如果让这个返回值不为0,它不会清Block元素,但是会多弹出一个外部库异常的提示。' ]$ Q4 d+ G' T* N$ {9 \9 e
       问下这个有什么办法可以解决。
3 P5 D( r1 @9 c( F' X1 \7 _int xxxx::apply_cb()
: O8 |) I  E, I{" T  ?+ i1 a5 k  z* w# z' y
        int errorCode = 0;
! [9 q- p/ m2 a' A8 ^        try
5 E% i  M. R/ f, M' w/ s2 G0 d% B/ T4 o3 v& b        {" U6 C4 f# M1 x' y( @  P. Y
。。。。。。。! o1 j8 X3 q, |  J! c
        }
% M2 ]4 f+ a0 J; ^7 }        caTCh (exception& ex)  O: ]2 x- Z1 R2 u9 `7 \0 z6 A
        {. R* f3 R8 h4 o# N1 Q" m
                //---- Enter your exception handling code here -----& P6 A; ?6 u3 k$ Q; A6 F
                errorCode = 1;6 {( l. n8 H  N/ S9 n! j+ y& r
                InsertDesgin::theUI->NXMessageBox()->Show("BlcokUI styler", NXOpen::NXMessageBox:ialogTypeError, ex.what());- q! P* x9 p$ b- }4 @
        }
, M5 P( E% y3 T! P% k        return errorCode;8 E- E) }8 f9 V- g6 p3 b2 \
}
2 b5 O% r! e5 B6 V
) a% s8 }4 ?! ?' O4 `4 P
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复4

rkc_555 发表于 2017-5-30 16:38:59

rkc_555 沙发

2017-5-30 16:38:59

这样做不太好,程序效率不高,你可以在update函数里面做条件判断,这样你每次交互都可以知道有没有异常
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

humanster 发表于 2017-6-2 01:39:54

humanster 板凳

2017-6-2 01:39:54

rkc_555 发表于 2017-5-30 16:38
% a- k% Y- v3 n* N3 ~& [/ E这样做不太好,程序效率不高,你可以在update函数里面做条件判断,这样你每次交互都可以知道有没有异常 ...

. T6 d1 p1 X7 s  R# n# N2 ?. v我明白你的意思,主要还是BlockUI的机制。因为界面上Apply按钮启用了以后,用户是直接可以中键进行操作的,难免有误操作。如果在Updata里面做,有什么办法可以把Apply按钮禁用掉么: ?$ c& h# h# ?$ y7 m- t
1 \- k; ~' i& A  `' D
BLockUI的确进步了很多,加了很多控件和特征,但是有些地方还是约束的太多了,感觉没有UIstyler和MFC灵活,我现在一般都习惯在UIstyler里面嵌入MFC控件来整。用BlockUI也就是只想用下手柄
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

rkc_555 发表于 2017-6-2 18:18:23

rkc_555 地板

2017-6-2 18:18:23

humanster 发表于 2017-6-2 01:399 a* v* k" t$ r! @! `1 Z
我明白你的意思,主要还是BlockUI的机制。因为界面上Apply按钮启用了以后,用户是直接可以中键进行操作的 ...

- y/ T, I& z* i: a$ k6 n  P, \7 \: E9 ^好像有方法的,你在编辑UI界面时,在代码生成界面上有个“启用确定/应用按钮”,你把这个设为TRUE,然后再加代码到里面试试,我没用过这个函数,不知道行不行
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

humanster 发表于 2017-6-19 12:34:17

humanster 5#

2017-6-19 12:34:17

rkc_555 发表于 2017-6-2 18:18+ w2 C( a, Y' x. P) R
好像有方法的,你在编辑UI界面时,在代码生成界面上有个“启用确定/应用按钮”,你把这个设为TRUE,然后再 ...
' I6 I* X. R: s! g* o$ U1 M% A
好的,谢谢!看来也只有这个方法了!
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了