关于属性模板使用的问题求助
情景如下:我在NX9里,建立了一个属性模板,模板内容含两条,其中一条选择保存后锁定,然后在建模环境下创建了一个体,对属性的值进行写入,保存后重新打开,看到属性是如下图1所示的。(这种属性锁定是我所需要的,不是不小心锁定哦~)
现在我想做一个开发,可以解锁这个属性,然后再对这个属性进行赋值,写入以下代码之后,出现两个报错,
第一个错误出现在UF_ATTR_set_locked这个函数的值,如图2所示。
第二个错误出现在UF_ATTR_assign这个函数的值,如图3所示。
现在就请问大神!有没有什么办法是可以帮我实现我想要的这个功能?
代码如下:
代码应该没有什么问题,问题在于如何解锁属性模板中锁定的属性?
<P>int res=0,a=0,b=0,erro=0;
tag_t obj=NULL_TAG;
double cursor={0};
tag_t view=NULL_TAG;
logical locked;
char msg={0};
UF_ATTR_value_t sv;
UF_UI_select_with_single_dialog("","",UF_UI_SEL_SCOPE_WORK_PART,body_sel_init,NULL,
&res,&obj,cursor,&view);
UF_ATTR_ask_locked(obj,"text1",&locked);
a=locked;
UF_ATTR_ask_locked(obj,"text2",&locked);
b=locked;
erro=UF_ATTR_set_locked(obj,"text2",0);
if (erro!=0)
{
UF_get_fail_message(erro,msg);
uc1601(msg,1);
}
sv.type=UF_ATTR_string;
sv.value.string="11111";
erro=UF_ATTR_assign(obj,"text2",sv);
if (erro!=0)
{
UF_get_fail_message(erro,msg);
uc1601(msg,1);
}
UF_DISP_set_highlight(obj,0);</P>
<P> </P>
<P> </P>int body_sel_init(UF_UI_selection_p_t select_,void* user_data)
{
UF_UI_mask_t a1={UF_solid_type,UF_solid_body_subtype,UF_UI_SEL_FEATURE_SOLID_BODY};
UF_UI_set_sel_mask(select_,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,1,a1);
return UF_UI_SEL_SUCCESS;
}
<P> </P>
airintheair 发表于 2015-12-1 05:49
图1中,text2只读那一栏是锁定的图标
Overview
Sets the lock status of an attribute on the object specified. If the attribute does not
exist for the specified attribute type then an error is returned.
Passing an object tag will result in modifying an attribute
on that object. Passing in a part tag will result in modifying
a part attribute for that part.
The part in which the object resides must be fully loaded.
Unlocking a locked attribute requires access via a Customer Default setting
Discouraged in new applications
图1中,text2只读那一栏是锁定的图标 admin 发表于 2015-12-1 20:10
Overview
:loveliness:太棒了,完美解决问题,3Q老大!! 学习一下
页:
[1]