iCAx开思工具箱

标题: 请教大家一个问题 [打印本页]

作者: lxpc    时间: 2005-8-28 17:34
标题: 请教大家一个问题
我用UIStyler创建了一个对话框,并在cancel按钮的回调函数里添加了一段《UG应用开发教程与实例精解》程序,是有关消息对话框的。
如下:
int CS_2_cancel_cb ( int dialog_id,
             void * client_data,
             UF_STYLER_item_value_type_p_t callback_data)
{
     /* Make sure User Function is available. */   
     if ( UF_initialize() != 0)  
          return ( UF_UI_CB_CONTINUE_DIALOG );
  
     /* ---- Enter your callback code here ----- */
   int response=0;
   char title_string[]="消息";
   char sMessages[132+1]="你是否真的想退出";
   char *p=sMessages;
   UF_UI_MESSAGE_DIALOG_TYPE
dialog_type=UF_UI_MESSAGE_QUESTION;
   UF_UI_message_buttons_s button;
  
   button.button1=true;
   button.button2=true;
   button.button3=true;
  
   button.label1="OK";
   button.label2="NO";
   button.label3="CANCEL";
  
   button.response1=1;
   button.response2=2;
   button.response3=3;
  
   UF_UI_message_dialog(title_string,dialog_type,[$p,1,0,&button,&response)]
   switch(response)
   {
   case 1:uc1601(button.label1,1);break;
   case 2:uc1601(button.label2,1);break;
                 case 3:uc1601(button.label3,1);break;
   default :uc1601("no anniu",1);break;
   }
  
     UF_terminate ();
  
    /* Callback acknowledged, terminate dialog             */
    /* It is STRONGLY recommended that you exit your       */
    /* callback with UF_UI_CB_EXIT_DIALOG in a cancel call */
    /* back rather than UF_UI_CB_CONTINUE_DIALOG.          */
    return ( UF_UI_CB_EXIT_DIALOG );                        
  
}
  
现在想实现当单击OK时就取消了UIStyler创建的对话框,而单击NO时,就不退出对话框。不知如何修改,或者用什么操作函数。希望大家帮个忙,谢谢!!
作者: pifujian    时间: 2005-8-29 11:37
把switch段改为:
  switch(response)  
   {  
  case 1:return ( UF_UI_CB_EXIT_DIALOG );break;  
  case 2:return ( UF_UI_CB_CONTINUE_DIALOG );break;  
  case 3:return ( UF_UI_CB_CONTINUE_DIALOG );break;  
  default :uc1601("no anniu",1);break;  
  }
不知道是不是你要的效果!
作者: lxpc    时间: 2005-8-30 09:15
谢谢您;
正是我想要的结果。




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