|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
5 `7 B/ u+ R# z4 i5 [NX二次开发源码分享:用ufun函数选择一个装配组件- H' a6 [% S1 X# p/ f6 U3 g1 B' J
. I* v3 E& U: t6 n$ Kstatic int mask_for_components(UF_UI_selection_p_t select, void *type)3 B6 Y6 ]7 M( b$ `$ s1 R
{- _) d: q, }' M) |6 I% U3 P
UF_UI_mask_t- i& g& N6 y( w0 K
mask = { UF_component_type, 0, 0 };) l5 [# u+ j- G! E" j; w* t( x
" X4 p- u# _1 H& M. l1 }* l if (!UF_CALL(UF_UI_set_sel_mask(select,
3 U2 g: Z' O2 a8 M0 g UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC, 1, &mask)))
2 w9 @& a4 y1 U4 N# g( r2 p3 v return (UF_UI_SEL_SUCCESS);) ^6 i, B. l) @: S$ o) ]1 x8 m9 o
else
6 i" ^4 q2 |' W) I5 n1 s, G7 h return (UF_UI_SEL_FAILURE);
" y) }! x3 d; W Z}
( Y9 N Q2 }2 U$ _1 z8 T& z0 O8 m
static tag_t select_a_component(char *prompt)
6 ^' C: d- v/ i. u: ]4 v* o3 {{
& K) V: [4 |/ I' m9 W! E& U. j int
8 p7 r- {# s/ _* c resp;
- x$ ], G8 w' Z) ^1 @" | double5 G: l) Q" [; D" F7 H
cp[3];: R' p1 J: u+ |. M& s8 L# X
tag_t
5 G# u8 ~) H8 N' T" V. g* @ object,
5 S/ X+ t b; @2 A# S view;
/ ~( q+ m; H h6 X* {# j; J( b1 y
UF_CALL(UF_UI_select_with_single_dialog("Select a component", prompt,- u' r( t9 j; b' p- v& X
UF_UI_SEL_SCOPE_WORK_PART, mask_for_components, NULL, &resp,
1 H) j& C- j, P &object, cp, &view));, p( q' v1 C1 d; u( u E
/ I! H8 D8 ^- o3 s
if (resp == UF_UI_OBJECT_SELECTED || resp == UF_UI_OBJECT_SELECTED_BY_NAME)2 s/ x) t* S1 v% }4 J
{
! z! k) z# d W" D4 k, N UF_CALL(UF_DISP_set_highlight(object, 0));
1 y0 X7 D- B! M* d, c- f return object;4 O* v6 X+ a1 r1 F' L, f2 M
}- s @; H7 x. Y( p. c$ x! l5 l
else return NULL_TAG;
% r1 R! s8 W+ R- n
3 J0 V) m8 K, \4 S* C( f}
& S, z( ~" s# S3 G( f8 ?# n1 E( E4 w5 F
|
|