PLM之家PLMHome-工业软件践行者

[求助] UF_UI_select_with_single_dialog()问题

  [复制链接]

2016-3-9 22:45:16 8394 7

2

主题

19

回帖

158

积分

注册会员

积分
158
发表于 2014-8-11 14:07:23 | 显示全部楼层 |阅读模式

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

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

x
UG二次开发问题:我在建模环境下用UF_UI_select_with_single_dialog()没问题,在组件工程图模式下用UF_UI_select_with_single_dialog()却选不中零件,是什么原因??或选择其它的特征都不能选择,为什么呢?请大神帮忙解决一下,非常感谢。……# A' x7 a4 W9 Z2 l8 a
        tag_t object,view;
8 S) e# |: x. T4 B        char cue[] = "select object ";+ s5 z7 a& d, ]# t
        int scope = UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY;//UF_UI_SEL_SCOPE_ANY_IN_ASSEMBLY,UF_UI_SEL_SCOPE_WORK_PART8 k: [) s( H7 V: S% {% w( P
        char part_fspec [ MAX_FSPEC_SIZE+1 ];
5 H9 G: c1 x& D# R        int  response;
3 \2 ?" O$ Z) ?        double cursor[3];2 R8 C8 f6 E! A; j+ K! B/ \
        tag_t part_tag;
" Y; V! u7 k# ^( K        CString infro;
8 [( e+ }9 Z, ]- m: b9 G2 f( z$ W# N( |9 V0 t
        UF_UI_select_with_single_dialog(cue,"select the object",scope, UF_UI_sel_part, NULL, &response, &object, cursor, &view );7 z; Z3 O! C2 H! U  k8 H# x
        if (response == UF_UI_OBJECT_SELECTED ||
- z/ E. G/ u8 i3 K" E& G# t% J                response == UF_UI_OBJECT_SELECTED_BY_NAME)
5 @1 O  @7 d9 `0 w" |        {
9 L, q% {  G; R0 Y5 u                UF_DISP_set_highlight(object,0);$ l# z* ]3 k2 W
                UF_MODL_update();
! y9 F  t  K8 F; o' [, S        }
; k% G  |: v- ystatic int UF_UI_sel_part(UF_UI_selection_p_t select, void * user_data)2 _: ^9 N0 b9 N8 `" F% J
{  & a0 V$ B' y2 y
        UF_UI_mask_t  mask_triples[] = {UF_component_type, 0, 0};//UF_component_type(组件中选择零件)- X$ e; j% T) u6 a' Z2 X9 R) M
        if (UF_CALL(UF_UI_set_sel_mask(select,UF_UI_SEL_MASK_CLEAR_AND_ENABLE_SPECIFIC,1,mask_triples))==0)1 r6 X+ }' i" O; p
        {
. a6 Q1 z' j8 R3 F                return (UF_UI_SEL_SUCCESS);
, l4 y, w3 z  S$ @4 W5 q        }
- k/ Z3 |1 v, k' A        else$ ^# ~" a; v1 N! @2 }$ T
        {
, s/ K- a4 n. I: _6 V                return (UF_UI_SEL_FAILURE);8 A& ?' l+ L  [- z) n
        }1 ?# y4 ~+ V% t- @
}
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复

使用道具 举报

全部回复7

2

主题

19

回帖

158

积分

注册会员

积分
158
 楼主| 发表于 2014-8-11 21:08:35 | 显示全部楼层
自己顶一下,谢谢了………………期待大神的出现。……
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82162
QQ
发表于 2014-8-12 13:33:44 | 显示全部楼层
在制图中 怎么选组件? 手动怎做  没试过
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

2

主题

19

回帖

158

积分

注册会员

积分
158
 楼主| 发表于 2014-8-13 09:43:18 | 显示全部楼层
admin 发表于 2014-8-12 13:334 ]9 k. f7 S# Q; p+ \9 \
在制图中 怎么选组件? 手动怎做  没试过

- C- o. p+ ^, G) g. [3 E) f6 M其实是这样的,在单个零件中选择别的比如,边,实体等用UF_UI_select_with_single_dialog()为什么选择不了,我是建模环境下可以,在制图中就不能选择。像UG自己的命令,标注尺寸选择那样的选择。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

2470

主题

1275

回帖

8万

积分

管理员

PLM之家站长

积分
82162
QQ
发表于 2014-8-13 15:17:27 | 显示全部楼层
丿僦湜灬禧歡沵 发表于 2014-8-13 01:43
# E: Y7 {0 A* M+ t' ^其实是这样的,在单个零件中选择别的比如,边,实体等用UF_UI_select_with_single_dialog()为什么选择 ...
: L" v# A. }+ w
尺寸标注的时候 选择的对象 恐怕不是     UF_UI_mask_t  mask_triples[] = {UF_component_type, 0, 0};//UF_component_type(组件中选择零件)
! V" \0 B4 G0 B你这个吧
" \6 |. h6 z  t1 t: j+ s: y8 }/ K% |; R( ~3 W
应该是 edge的类型
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 doTeam.tech
回复 支持 反对

使用道具 举报

2

主题

19

回帖

158

积分

注册会员

积分
158
 楼主| 发表于 2014-8-14 16:04:04 | 显示全部楼层
admin 发表于 2014-8-13 15:17( E7 v5 ?; p' z2 B# C# u0 j
尺寸标注的时候 选择的对象 恐怕不是     UF_UI_mask_t  mask_triples[] = {UF_component_type, 0, 0};// ...

" l3 Y; A9 W7 p- {& S$ {UF_UI_mask_t mask_triples[] = {# k! V$ v) `, b) _9 c0 J/ S
                UF_line_type, 0, 0,4 r" \: `1 N' {* E% Q: s
                UF_solid_type, 0, UF_UI_SEL_FEATURE_ANY_EDGE};我用的是这个,工程图中的UF_UI_select_with_single_dialog()这个函数完全失效…………可能是我没说清。你试试就明白我的意思了。
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

19

主题

39

回帖

492

积分

中级会员

积分
492
发表于 2016-3-1 23:23:39 来自手机 | 显示全部楼层
我也遇到这个问题,不知道你解决没有
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

19

主题

39

回帖

492

积分

中级会员

积分
492
发表于 2016-3-9 22:45:16 来自手机 | 显示全部楼层
加这个:theUfSession.Ui.SetCursorView(0)
上海点团信息科技有限公司,承接UG NX,CATIA,CREO,Solidworks 等CAx软件,Teamcenter,3D Experience等PLM软件,工业4.0数字化软件的实施\二次开发\培训相关业务,详情QQ 939801026 Tel 18301858168 网址 www.doteam.tech
回复 支持 反对

使用道具 举报

发表回复

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

返回列表 本版积分规则

  • 发布新帖

  • 在线客服

  • 微信

  • 客户端

  • 返回顶部

  • x
    温馨提示

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

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

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

    我知道了