iCAx开思工具箱

标题: UG二次开发关于MFC非模态对话框和UIStyler对话框调用的诡异问题 [打印本页]

作者: zimmerman    时间: 2014-6-16 11:49
标题: UG二次开发关于MFC非模态对话框和UIStyler对话框调用的诡异问题
做了一个MFC非模态对话框调用UIStyler对话框的小例子
正常操作是
1、MFC非模态对话框点击按钮调用UIStyler定制的ug对话框
2、UF_UI_lock_ug_access (UF_UI_FROM_CUSTOM),并将MFC对话框隐藏。
3、UF_STYLER_create_dialog打开UIStyler对话框
4、正常在uistyler对话框退出时,再显示mfc对话框。UF_UI_unlock_ug_access(UF_UI_FROM_CUSTOM);
以上是设定的正常的操作。

现在问题是在3-4步骤之间。虽然使用了lock_ug_access
但UG界面没有全部锁定,还是有若干ug菜单 和对话框可以使用。分为两类
A类、如Layer设置的对话框,调用后,关闭,还是会返回到之前的我们的UIStyler对话框,无任何问题
B类、如CAM导航栏的右键Edit菜单,调用后,关闭,不会返回到之前的我们的UIStyler对话框。这时候UG界面无任何功能可用。处于假死状态。只能关闭UG。

对于这种错误,思考几个解决方案:
1、全部锁定UG界面
       A,可找不到这样的函数。仅有UF_UI_lock_ug_access
       B、隐藏掉导航栏,同样没有找到这样的函数
2、设置Hook,将原来的对话框显示出来
      A、显示MFC非模态对话框,可以显示,但界面还是锁定的,若unlock之后,再调用UF_STYLER_create_dialog,则报错
            A dialog cannot be constructed from your callback if you have not set the Dialog Creating Callback toggle in the UIStyler.
      B、显示刚刚的那个UIStyler对话框
           但如何显示那个UIStyler对话框

求各位高手不吝赐教。。。。




作者: zimmerman    时间: 2014-6-19 14:22
怎么没人高手指导下啊
作者: zimmerman    时间: 2014-6-22 11:02
一直在等待。。。。。。
作者: zimmerman    时间: 2014-6-30 20:16
有没有




欢迎光临 iCAx开思工具箱 (https://t.icax.org/) Powered by Discuz! X3.3