iCAx开思工具箱

标题: ug对话框中item sensitivity 的改变 [打印本页]

作者: lcfq    时间: 2003-4-4 11:39
标题: ug对话框中item sensitivity 的改变
我设计了一个函数来改变对话框中控件的sensitivity属性,结果是没有反映。请问是什么原因?函数代码如下:
  
static void basin_set_dlg_item_sens(int dialog_id, char *item_id, int item_status)
{
  UF_STYLER_item_value_type_t item_data;
  int cur_status;
  
  //get the item's current status.
  item_data.item_attr=UF_STYLER_SENSITIVITY;
  item_data.item_id=item_id;
  UF_STYLER_ask_value(dialog_id, [$item_data)]
  cur_status=item_data.value.integer;
  
  if(cur_status==item_status)  
  {
    return; //not change.
  }
  else
  {
    //change the sensitivity status.
    item_data.value.integer=item_status;
    UF_STYLER_set_value(dialog_id, [$item_data)]
  }
return;
}
  
麻烦各位指点一下。谢谢。
作者: lcfq    时间: 2003-4-5 09:14
各位高手帮帮忙吧。我编的这段代码在编译、链接时均无错误提示,可是在ug下运行时,控件的sensitivity却没有变化。麻烦各位了。谢谢。
作者: lcfq    时间: 2003-4-5 21:49
问题已经解决了。代码如下,与大家分享。这是一个函数的定义。
//this functions set the dialog item's sensitivity.
// noted: item_type
//     1  -------it fefers items with subitems.
//     0--------it refers to items with no subitems.
static void basin_set_dlg_item_sens(int dialog_id, char *item_id, int item_status, int item_type)
{
  UF_STYLER_item_value_type_t item_data;
  
  //get the item's current status.
  int cur_status;
  item_data.item_attr=UF_STYLER_SENSITIVITY;
  item_data.item_id=item_id;
  
  UF_STYLER_ask_value(dialog_id, [$item_data)]
  cur_status=item_data.value.integer;
  
  if(cur_status==item_status)  
  {
    return; //not change.
  }
  else
  {
    //change the sensitivity status.
    if(item_type=1)
    {
      item_data.subitem_index=UF_STYLER_NO_SUB_INDEX;
    }
    item_data.value.integer=item_status;
    UF_STYLER_set_value(dialog_id, [$item_data)]
  }
  
  return;
  
}




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