PLM之家精品课程培训

PLM之家精品课程培训

联系电话:18301858168   |   QQ咨询:939801026
NX二次开发培训

NX二次开发培训

UFUN/NXOpen C++和实战案例

适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术。
公众号二维码

关注公众号

点击扫描二维码免费在线高清教程

课程详情
Catia二次开发培训

Catia二次开发培训

市场需求大,掌握核心技术前景广阔

Catia二次开发的市场需求大,人才稀缺。掌握开发技能潜力巨大,随着经验积累将在汽车、航空等领域有所作为。
B站二维码

在线原创B站视频

点击关注工业软件传道士主页

课程详情
Teamcenter培训

Teamcenter培训

全方位培训,从基础应用到高级开发全覆盖

涵盖用户应用基础培训、管理员基础培训、管理员高级培训及二次开发培训等全方位内容,由多年经验讲师打造。
QQ群二维码

加入同行交流

点击扫描二维码加入QQ群

课程详情
×

PLM之家plmhome公众号

课程涵盖: PLM之家所有原创视频

×

关注B站视频

所有高清视频一览无余,全部在线播放学习

×

加入PLM之家QQ群

同行交流,疑问解答,更多互助

PLM之家PLMHome-国产软件践行者

[求助] 关于属性模板使用的问题求助

  [复制链接]

2018-6-16 12:51:43 5386 4

airintheair 发表于 2015-12-1 13:48:36 |阅读模式

airintheair 楼主

2015-12-1 13:48:36

请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!

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

x
情景如下:- _- d9 j: [4 x5 f
我在NX9里,建立了一个属性模板,模板内容含两条,其中一条选择保存后锁定,然后在建模环境下创建了一个体,对属性的值进行写入,保存后重新打开,看到属性是如下图1所示的。(这种属性锁定是我所需要的,不是不小心锁定哦~)0 t& N/ e. r( A0 C$ h" y

7 y2 r) g& e- s0 ]; f" V现在我想做一个开发,可以解锁这个属性,然后再对这个属性进行赋值,写入以下代码之后,出现两个报错,1 @  I! ~  D* E1 S, D8 f
第一个错误出现在UF_ATTR_set_locked这个函数的值,如图2所示。0 M" n/ J3 T! o  P) ^1 G! H* ^
第二个错误出现在UF_ATTR_assign这个函数的值,如图3所示。
2 E  B* ^4 J9 a8 y6 x
! ?5 l+ ~3 a$ X: G2 D" g  p现在就请问大神!有没有什么办法是可以帮我实现我想要的这个功能?
5 w1 \0 b6 T) L" Z* A) u1 s. D
0 O  `& k+ \$ X$ P- ^代码如下:% O8 t& M! j; v' Q, v
代码应该没有什么问题,问题在于如何解锁属性模板中锁定的属性?
5 J5 }: \1 I$ `; K5 {1 T: n
  1. : h% R/ J! ~0 f; |% V
  2. <P>int res=0,a=0,b=0,erro=0;
    0 Y8 n# \' [5 V# ]: b" D# x- `
  3. tag_t obj=NULL_TAG;
    7 D: \/ b6 Q& f, p' m4 D/ \; w9 m* W
  4. double cursor[3]={0};  P" ~9 {4 b: X5 B
  5. tag_t view=NULL_TAG;
    9 f5 }5 z9 h1 s: Z& M8 P# c
  6. logical locked;- H+ W% v( K" i0 c
  7. char msg[256]={0};2 B7 S7 f8 w5 @' I: _  M
  8. UF_ATTR_value_t sv;
    4 F) \+ v* m% Y6 w- \+ `2 o
  9. 9 |* r% H; D2 A4 H
  10. UF_UI_select_with_single_dialog("","",UF_UI_SEL_SCOPE_WORK_PART,body_sel_init,NULL,
    4 q, u: n& W' u! J- p5 x
  11. &res,&obj,cursor,&view);" l/ ?. c1 r( ?# \+ D
  12. UF_ATTR_ask_locked(obj,"text1",&locked);
      F. e. S# l4 ?5 K7 E, I9 x- n
  13. a=locked;
    0 k+ @( F2 o! L0 y& v
  14. UF_ATTR_ask_locked(obj,"text2",&locked);! L6 a; m  S4 [  W2 R
  15. b=locked;% Y9 z- b3 _. c( K. X+ M
  16. erro=UF_ATTR_set_locked(obj,"text2",0);  E4 Q" N% d. w- z; P- S6 g
  17. if (erro!=0)8 D' P9 M  G9 K' u: ?
  18. {
    # Q/ U: \3 r1 @: @
  19. UF_get_fail_message(erro,msg);
      E: k. d8 M& r; S
  20. uc1601(msg,1);
    : Q9 d7 k  `4 t2 f
  21. }
    # W/ Y+ G3 E. A
  22. sv.type=UF_ATTR_string;4 U/ @0 R# ^' f4 p8 F
  23. sv.value.string="11111";2 G3 f% p4 \; g" ~
  24. erro=UF_ATTR_assign(obj,"text2",sv);
    / h0 p* y: H/ Z0 g
  25. if (erro!=0)& b+ Y' V9 f4 d- l5 ?$ G
  26. {/ E: X* I5 o- P# f1 @6 h1 [
  27. UF_get_fail_message(erro,msg);/ `* ~6 M$ e6 t; L8 X
  28. uc1601(msg,1);; h8 H  T) W' k' f
  29. }
    / J- b' ~1 w$ K8 S4 B. O

  30. $ T9 p% H! I( P: X* j
  31. UF_DISP_set_highlight(obj,0);</P>
    ) e1 G6 {# i( x3 D& E5 l) D
  32. <P> </P>
    9 @$ C) Y6 u/ s. G6 d& Q7 Q) b! N- {
  33. <P> </P>int body_sel_init(UF_UI_selection_p_t select_,void* user_data)
    6 [/ @: j& q9 }9 W- h2 p( ]6 b5 \
  34. {
    . c. ]" P! T: e9 ?* ]
  35. UF_UI_mask_t a1[3]={UF_solid_type,UF_solid_body_subtype,UF_UI_SEL_FEATURE_SOLID_BODY};
    / v5 U3 w$ p/ q0 \
  36. UF_UI_set_sel_mask(select_,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,1,a1);3 n/ k$ v2 P8 J  U7 W  ]) \- j
  37. return UF_UI_SEL_SUCCESS;+ h$ J2 D# D' D9 d) S: j
  38. }
      J$ D4 ^) O2 _' [8 @7 U
  39. <P> </P>
复制代码

- Z, Q8 y8 {) b" ?/ s; j1 L. o+ A9 x+ R1 }

图1

图1

图2

图2

图3

图3
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复

使用道具 举报

全部回复4

admin 发表于 2015-12-1 20:10:05

admin 推荐

2015-12-1 20:10:05

airintheair 发表于 2015-12-1 05:49
" ]$ o7 P8 r0 U3 C' g图1中,text2只读那一栏是锁定的图标
  \  H5 }" k4 H
Overview
: E5 i3 I# r3 b7 I$ A+ r. k0 ], A# w# @4 r2 H4 D/ m

% M/ D, x' q) u- }- ^. @0 HSets the lock status of an attribute on the object specified. If the attribute does not
9 V" Z' `5 `" n8 ?3 g. j$ t( h exist for the specified attribute type then an error is returned. ( j* ~  U5 {7 c( f
) M; t8 E( P1 J9 C' N3 \
Passing an object tag will result in modifying an attribute
. t$ F. k7 z. M" z on that object. Passing in a part tag will result in modifying ! t9 R; B( w5 N- z( w, z9 j7 u
a part attribute for that part. ( p% B/ ?6 l7 J! _

8 _, x' u3 O$ V" V$ o& r The part in which the object resides must be fully loaded. 6 k4 n: ?8 ]1 e0 q6 m9 X0 h

4 g8 y- `* ^( t  V6 X Unlocking a locked attribute requires access via a Customer Default setting
4 D6 H# e1 |0 s6 Y
+ a' z! ]+ O/ M% @ Discouraged in new applications 8 @1 a; W2 ^% p( F0 U
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 1 反对 0

使用道具 举报

airintheair 发表于 2015-12-1 13:49:58

airintheair 沙发

2015-12-1 13:49:58

图1中,text2只读那一栏是锁定的图标
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

airintheair 发表于 2015-12-3 12:59:14

airintheair 地板

2015-12-3 12:59:14

admin 发表于 2015-12-1 20:10
6 e/ x1 F8 \0 fOverview

: s' y8 t4 U( Z' I$ {太棒了,完美解决问题,3Q老大!!
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.diantuankj.com/ doTeam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

    本网站(plmhome.com)为PLM之家工业软件学习官网站

    展示的视频材料全部免费,需要高清和特殊技术支持请联系 QQ: 939801026

    PLM之家NX CAM二次开发专题模块培训报名开始啦

    我知道了