奔跑的山羊 发表于 2018-12-12 09:31:15

UIStyler界面嵌套block界面回调错误



      各位大佬,请问有谁知道,UIStyler界面嵌套block界面时,block界面回调不了怎么解决吗?

急!不胜感激啊!!!

    下面是我调用block界面的代码:

   int BODY_action_51_act_cb ( int dialog_id,
    void * client_data,
    UF_STYLER_item_value_type_p_t callback_data)
{
      if ( UF_initialize() != 0)
      return ( UF_UI_CB_CONTINUE_DIALOG );

   /* ---- Enter your callback code here ----- */

    //调用block界面
   measure_min_dist *themeasure_min_dist = NULL;
   try
   {
          themeasure_min_dist = new measure_min_dist();
          // The following method shows the dialog immediately
          themeasure_min_dist->Show();
   }
   catch(exception& ex)
   {
          //---- Enter your exception handling code here -----
          measure_min_dist::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
   }
   if(themeasure_min_dist != NULL)
   {
          delete themeasure_min_dist;
          themeasure_min_dist = NULL;
      }
   UF_terminate ();
   /* Callback acknowledged, do not terminate dialog */

   return (UF_UI_CB_CONTINUE_DIALOG);
}


      这个update_cb只能走一次就死掉了,block界面在UG后台无法退出,同时也不显示。

int measure_min_dist::update_cb(NXOpen::BlockStyler::UIBlock* block)
{
    try
    {
         if(block == face_select0)
         {
               //---------Enter your code here-----------
         }
         else if(block == face_select01)
         {
               //---------Enter your code here-----------
         }
         else if(block == separator0)
         {
            //---------Enter your code here-----------
         }
         else if(block == double0)
      {
             //---------Enter your code here-----------
         }
   }
    catch(exception& ex)
   {
          //---- Enter your exception handling code here -----
         measure_min_dist::theUI->NXMessageBox()->Show("Block Styler", NXOpen::NXMessageBox::DialogTypeError, ex.what());
   }
   return 0;
}

蓝摩羯 发表于 2018-12-14 08:48:37

为什么第一个界面不用blockui?

奔跑的山羊 发表于 2018-12-14 17:13:08

蓝摩羯 发表于 2018-12-14 08:48
为什么第一个界面不用blockui?

原来的程序,C界面做的。重做费事。好像在BLOCK UI里面连vector都不能用。是不是涉及到C++的都不行?

蓝摩羯 发表于 2018-12-15 09:37:21

奔跑的山羊 发表于 2018-12-14 17:13
原来的程序,C界面做的。重做费事。好像在BLOCK UI里面连vector都不能用。是不是涉及到C++的都不行?

vector是容器,为什么不能用?BLOCK UI和UIStyler里可以用C++啊,C++是以C的基础发展起来的一门新语言.

小小小小星星 发表于 2018-12-19 12:54:03

不太明白

奔跑的山羊 发表于 2018-12-19 14:19:13

蓝摩羯 发表于 2018-12-15 09:37
vector是容器,为什么不能用?BLOCK UI和UIStyler里可以用C++啊,C++是以C的基础发展起来的一门新语言.

我指的是他的对话框回调函数里面

wjw1210 发表于 2018-12-26 17:15:26

过来学习,看看

wjw1210 发表于 2018-12-26 17:35:43

ugsnx.com

shuibaikai 发表于 2018-12-30 08:51:42

哈哈哈哈哈哈

baibai541022 发表于 2019-1-12 11:05:19

路过看看,学习了{:lol:}
页: [1]
查看完整版本: UIStyler界面嵌套block界面回调错误