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 5416 4

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

airintheair 楼主

2015-12-1 13:48:36

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

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

x
情景如下:% _  [, X' f- r1 l
我在NX9里,建立了一个属性模板,模板内容含两条,其中一条选择保存后锁定,然后在建模环境下创建了一个体,对属性的值进行写入,保存后重新打开,看到属性是如下图1所示的。(这种属性锁定是我所需要的,不是不小心锁定哦~): u- z2 Q, C, E0 w8 D* \4 |$ |

+ P, P+ E3 J) |; @, w现在我想做一个开发,可以解锁这个属性,然后再对这个属性进行赋值,写入以下代码之后,出现两个报错,* r+ X6 O7 X- H& K1 l( e( s
第一个错误出现在UF_ATTR_set_locked这个函数的值,如图2所示。& {# l- k* ~& `# p6 c* u  W; u. `
第二个错误出现在UF_ATTR_assign这个函数的值,如图3所示。( q/ I  h  ]7 ~/ y
5 r% j* @) F8 u5 |; B3 E9 c; F
现在就请问大神!有没有什么办法是可以帮我实现我想要的这个功能?. W7 f& `3 K; b
: L# p$ m: P% {' |1 s# [: I
代码如下:! E( R0 h% R0 a8 u6 m& T' P$ e
代码应该没有什么问题,问题在于如何解锁属性模板中锁定的属性?
8 z! A- P! Y, Y4 C: W

  1. / \2 p  w+ T/ v1 I1 {" @
  2. <P>int res=0,a=0,b=0,erro=0;8 l4 a, B: k' Y  K
  3. tag_t obj=NULL_TAG;; B7 A& z( h: c- g; \1 X
  4. double cursor[3]={0};/ x4 ?* e9 b5 Z
  5. tag_t view=NULL_TAG;
    $ z7 l: i* S3 }' V' ^
  6. logical locked;. |2 ~" u! A8 T1 P& _2 P: |! ~4 [3 B
  7. char msg[256]={0};8 u0 w8 n9 K7 ?4 m4 W6 ]3 X. s$ }
  8. UF_ATTR_value_t sv;
    ' A; i1 Q' K9 c& o; Y9 [' J! I
  9. , e  a3 \$ j% e
  10. UF_UI_select_with_single_dialog("","",UF_UI_SEL_SCOPE_WORK_PART,body_sel_init,NULL,
    3 t- X+ Q& O" n& x
  11. &res,&obj,cursor,&view);
    $ v; W) L- y6 i
  12. UF_ATTR_ask_locked(obj,"text1",&locked);2 N! s& V! H# h  o" [% ^* W
  13. a=locked;) _, g. h& b: s) L; \8 `) T4 V# {
  14. UF_ATTR_ask_locked(obj,"text2",&locked);5 P4 x+ O5 Z8 L9 x+ M8 _! @
  15. b=locked;
    # W) y/ p% p% H5 {
  16. erro=UF_ATTR_set_locked(obj,"text2",0);3 ]& `- [! |, z/ F( K4 [
  17. if (erro!=0)
    1 N( s0 ^: q4 p3 J. [; S9 A
  18. {
    ) x1 t* N  s+ O' R& j0 A
  19. UF_get_fail_message(erro,msg);
      C' p. p) o  K5 f, i6 N+ b
  20. uc1601(msg,1);4 q' d: D9 v' B
  21. }
    9 V# y; v( i5 E. X4 `
  22. sv.type=UF_ATTR_string;( i1 K3 W1 o) Q5 w! z/ F0 o
  23. sv.value.string="11111";
    ( e7 L- F, A3 V0 l; [1 H7 n
  24. erro=UF_ATTR_assign(obj,"text2",sv);
    9 j+ E! `3 f6 H4 [1 t
  25. if (erro!=0)3 r2 U+ |: H8 f  C" R. P1 I: D
  26. {
    ' M0 \" v8 U# o, x1 a
  27. UF_get_fail_message(erro,msg);0 n, O- W. J( g/ h0 }" t( J
  28. uc1601(msg,1);
    5 v9 o2 ?) N7 V
  29. }
      y8 s- ~1 v8 T# C$ k2 X

  30. , _& F8 @0 B8 o8 R$ k. m( j2 V  N
  31. UF_DISP_set_highlight(obj,0);</P>
    ' q' b* r' i% h. L6 S
  32. <P> </P>
    8 a! A7 z! ~5 A
  33. <P> </P>int body_sel_init(UF_UI_selection_p_t select_,void* user_data)0 w0 X$ M; `. {- |, f. r+ ]
  34. {) c2 R) D' f# w. ^4 a9 K
  35. UF_UI_mask_t a1[3]={UF_solid_type,UF_solid_body_subtype,UF_UI_SEL_FEATURE_SOLID_BODY};, d5 b$ U1 h+ g6 X
  36. UF_UI_set_sel_mask(select_,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,1,a1);5 y# ^8 ^! M; O7 @+ Q
  37. return UF_UI_SEL_SUCCESS;
    9 R0 G) s0 }/ U3 w0 i% J# W. g' _
  38. }
    3 R' b1 u# M* l% H- t( G
  39. <P> </P>
复制代码
; m. ]) F& z& ?" F" i9 s

3 ?3 d! M8 k# B# r8 D. u

图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:490 }# Z+ [0 P9 {/ @, B
图1中,text2只读那一栏是锁定的图标

9 I! n  i6 }8 M: z5 o! |Overview
8 H) z& G$ a( ^& `; ]' d( L
3 G3 z0 }+ [( H
: g5 x0 U$ n$ f- Z8 U% H5 LSets the lock status of an attribute on the object specified. If the attribute does not
6 q0 C8 {: c. d) N exist for the specified attribute type then an error is returned. ' ?8 K, d/ O. v/ [3 n8 x3 d
5 H) c9 l5 A; Q5 @( K. X, {0 K
Passing an object tag will result in modifying an attribute
0 c! L: T- U2 O6 j+ J( B7 J on that object. Passing in a part tag will result in modifying
4 F) N' s% g, J6 q1 n( Y a part attribute for that part. " H- m8 Q! ], D8 U+ ~, E
( O( C, g/ Q4 s5 A
The part in which the object resides must be fully loaded. " O! X- Z% ~% ]
+ {9 c$ n* V4 E
Unlocking a locked attribute requires access via a Customer Default setting
0 f+ B" `8 Q  p" [% E
% a' z( K- h% \( |; p" Q Discouraged in new applications
& h( ]- k! u5 A# Z
上海点团信息科技有限公司,承接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
/ m) ^- [. \  ROverview

! t8 V) r  m% F8 x: W! Q太棒了,完美解决问题,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二次开发专题模块培训报名开始啦

    我知道了