Block UI Apply的返回值
版主:问个问题,在BlockUI里面,如果界面上所有需要设置的Block元素设置好之后,这时候Apply按钮可以点击了
但是如果中途我们判断有些条件不正确,不想让Apply执行完,就在中途返回,或者抛一个异常让Apply回调捕获,
这时候,如果Apply回调的返回值errorCode是0,它会把当前界面上所有Block元素已经设置的值都清空(比如已经选择的面,体。。)
如果让这个返回值不为0,它不会清Block元素,但是会多弹出一个外部库异常的提示。
问下这个有什么办法可以解决。
int xxxx::apply_cb()
{
int errorCode = 0;
try
{
。。。。。。。
}
catch (exception& ex)
{
//---- Enter your exception handling code here -----
errorCode = 1;
InsertDesgin::theUI->NXMessageBox()->Show("BlcokUI styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
}
return errorCode;
}
这样做不太好,程序效率不高,你可以在update函数里面做条件判断,这样你每次交互都可以知道有没有异常 rkc_555 发表于 2017-5-30 16:38
这样做不太好,程序效率不高,你可以在update函数里面做条件判断,这样你每次交互都可以知道有没有异常 ...
我明白你的意思,主要还是BlockUI的机制。因为界面上Apply按钮启用了以后,用户是直接可以中键进行操作的,难免有误操作。如果在Updata里面做,有什么办法可以把Apply按钮禁用掉么
BLockUI的确进步了很多,加了很多控件和特征,但是有些地方还是约束的太多了,感觉没有UIstyler和MFC灵活,我现在一般都习惯在UIstyler里面嵌入MFC控件来整。用BlockUI也就是只想用下手柄 humanster 发表于 2017-6-2 01:39
我明白你的意思,主要还是BlockUI的机制。因为界面上Apply按钮启用了以后,用户是直接可以中键进行操作的 ...
好像有方法的,你在编辑UI界面时,在代码生成界面上有个“启用确定/应用按钮”,你把这个设为TRUE,然后再加代码到里面试试,我没用过这个函数,不知道行不行 rkc_555 发表于 2017-6-2 18:18
好像有方法的,你在编辑UI界面时,在代码生成界面上有个“启用确定/应用按钮”,你把这个设为TRUE,然后再 ...
好的,谢谢!看来也只有这个方法了!
页:
[1]