iCAx开思工具箱

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 25124|回复: 7
打印 上一主题 下一主题

[求助]UG二次开发—UF_STYLER_set_value无法正常使用??

[复制链接]
跳转到指定楼层
楼主
发表于 2004-5-29 11:11:42 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
这是我源程序的一段代码,是某个对话框的构造函数的回调函数,我的目的是希望实现在弹出这个对话框的时候,相应的对话框中的控件能有一个初始的值。附件中有我的对话框示意图。
int CHANGE_constructor_cb ( int dialog_id,
             void * client_data,
             UF_STYLER_item_value_type_p_t callback_data)
{
  /*样条曲线数据定义区*/
  struct UF_CURVE_spline_s spline_data;
  UF_CURVE_spline_p_t spline_pointer=malloc( sizeof    (UF_CURVE_spline_p_t));
  double poles[20][2];
  int number;
  int i=0;
  int j=0;
  
           /*set对话框value定义区*/
  UF_STYLER_item_value_type_t value[25];
  
            /*出错信息反馈定义区*/
  int error;
  char message1[133];
  
           /* Make sure User Function is available. */  
  if ( UF_initialize() != 0)  
    return ( UF_UI_CB_CONTINUE_DIALOG );
  
  /* ---- Enter your callback code here -----*/  
  
   /*得到样条曲线的控制点的坐标值*/
  UF_CURVE_ask_spline_data ( curve_id ,
                           [$spline_data )]                    
  number=spline_data.num_poles;
  
  for(i=0;i<number;i++)
  {
    for(j=0;j<2;j++)
    {
      poles[j] = spline_data.poles[j];
    }  
  }
  
  
              value[0].item_id    = CHANGE_SCALE_REAL_0;
  value[0].item_attr  = UF_STYLER_VALUE;  
  
  value[1].item_id    = CHANGE_SCALE_REAL_1;
  value[1].item_attr  = UF_STYLER_VALUE;
  
  value[2].item_id    = CHANGE_SCALE_REAL_2;
  value[2].item_attr  = UF_STYLER_VALUE;  
  
  value[3].item_id    = CHANGE_SCALE_REAL_3;
  value[3].item_attr  = UF_STYLER_VALUE;
  
  value[4].item_id    = CHANGE_SCALE_REAL_4;
  value[4].item_attr  = UF_STYLER_VALUE;  
  
  value[5].item_id    = CHANGE_SCALE_REAL_5;
  value[5].item_attr  = UF_STYLER_VALUE;
  
  value[6].item_id    = CHANGE_SCALE_REAL_6;
  value[6].item_attr  = UF_STYLER_VALUE;  
  
  value[7].item_id    = CHANGE_SCALE_REAL_7;
  value[7].item_attr  = UF_STYLER_VALUE;
  
  value[8].item_id    = CHANGE_SCALE_REAL_8;
  value[8].item_attr  = UF_STYLER_VALUE;  
  
  value[9].item_id    = CHANGE_SCALE_REAL_9;
  value[9].item_attr  = UF_STYLER_VALUE;
  
  value[10].item_id    = CHANGE_SCALE_REAL_10;
  value[10].item_attr  = UF_STYLER_VALUE;  
  
  value[11].item_id    = CHANGE_SCALE_REAL_11;
  value[11].item_attr  = UF_STYLER_VALUE;
  
  value[12].item_id    = CHANGE_SCALE_REAL_12;
  value[12].item_attr  = UF_STYLER_VALUE;
  
  value[13].item_id    = CHANGE_SCALE_REAL_13;
  value[13].item_attr  = UF_STYLER_VALUE;  
  
  value[14].item_id    = CHANGE_SCALE_REAL_14;
  value[14].item_attr  = UF_STYLER_VALUE;
  
  value[15].item_id    = CHANGE_SCALE_REAL_15;
  value[15].item_attr  = UF_STYLER_VALUE;  
  
  value[16].item_id    = CHANGE_SCALE_REAL_16;
  value[16].item_attr  = UF_STYLER_VALUE;
  
  value[17].item_id    = CHANGE_SCALE_REAL_17;
  value[17].item_attr  = UF_STYLER_VALUE;  
  
  value[18].item_id    = CHANGE_SCALE_REAL_18;
  value[18].item_attr  = UF_STYLER_VALUE;
  
  value[19].item_id    = CHANGE_SCALE_REAL_19;
  value[19].item_attr  = UF_STYLER_VALUE;  
  
  value[20].item_id    = CHANGE_SCALE_REAL_20;
  value[20].item_attr  = UF_STYLER_VALUE;
  
  value[21].item_id    = CHANGE_SCALE_REAL_21;
  value[21].item_attr  = UF_STYLER_VALUE;  
  
  value[22].item_id    = CHANGE_SCALE_REAL_22;
  value[22].item_attr  = UF_STYLER_VALUE;
  
  value[23].item_id    = CHANGE_SCALE_REAL_23;
  value[23].item_attr  = UF_STYLER_VALUE;  
  
  value[24].item_id    = CHANGE_SCALE_REAL_24;
  value[24].item_attr  = UF_STYLER_VALUE;
  
  value[25].item_id    = CHANGE_SCALE_REAL_25;
  value[25].item_attr  = UF_STYLER_VALUE;  
  
  /*将控制点坐标值读到控件中*/
  for(i=0;i<number;i++)
  {
    value[2*i].value.real=poles[0];
    value[2*i+1].value.real=poles[1];        
  }
  
/*出错信息反馈*/
  error = UF_STYLER_set_value(dialog_id,value);
  
  if(error)  
  {        
      UF_get_fail_message( error, message1 );  
      UF_UI_set_status (message1);
  }  
  
UF_terminate ();
   return 0;
  
    /* Callback acknowledged, do not terminate dialog */
   // return (UF_UI_CB_CONTINUE_DIALOG);  
    /* A return value of UF_UI_CB_EXIT_DIALOG will not be accepted    */
    /* for this callback type.  You must continue dialog construction.*/
  
}

1953943-11-embed.JPG (57.31 KB, 下载次数: 3)

阅读权限: 1

1953943-11-embed.JPG
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 支持支持
沙发
发表于 2004-5-29 11:27:07 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
板凳
发表于 2004-5-29 12:11:22 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
地板
 楼主| 发表于 2004-5-29 12:49:04 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
5
发表于 2004-5-29 13:24:43 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
6
发表于 2004-6-1 16:35:34 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
7
发表于 2004-6-3 10:06:06 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
8
发表于 2004-6-3 10:06:51 | 只看该作者

马上注册登录,享用更多网站功能!

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手板模型制作,在线3D打印服务

QQ|小黑屋|手机版|开思工具箱 CAD工具箱_CAM工具箱  

GMT+8, 2024-9-30 07:31 , Processed in 0.015496 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.3

© 2002-2024 www.iCAx.org

快速回复 返回顶部 返回列表