PLM之家精品课程培训,联系电话:18301858168 QQ: 939801026

  • NX二次开培训

    NX二次开培训

    适合初级入门或想深入了解二次开发的工程师,本培训结合ufun,NXOpen C++,大量的实例及官方内部的开发技术对于老鸟也值得借鉴!.

    NX CAM二次开发培训报名 NX二次开发基础培训报名
  • PLM之家Catia CAA二次开发培训

    Catia二次开发培训

    Catia二次开发的市场大,这方面开发人才少,难度大。所以只要你掌握了开发,那么潜力巨大,随着时间的积累,你必将有所用武之地!

  • PLM之Teamcenter最佳学习方案

    Teamcenter培训

    用户应用基础培训,管理员基础培训,管理员高级培训,二次开发培训应有尽有,只要你感兴趣肯学习,专业多年经验大师级打造!

  • PLM之Tecnomatix制造领域培训

    Tecnomatix培训

    想了解制造领域数字化吗?想了解工厂,生产线设计吗?数字化双胞胎,工业4.0吗?我们的课程虚位以待!

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

[二次开发源码] UG NX二次开发源码分享:创建树列表UI 界面功能技巧

[复制链接]

2014-11-10 14:57:33 4937 0

admin 发表于 2014-11-10 14:57:33 |阅读模式

admin 楼主

2014-11-10 14:57:33

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

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

x
2 O! F" o4 X+ b# l2 O" V- f% W
简单说说顺序和注意事项:6 g! M* z6 w0 |$ E, a
' Y; u" A( c* Z. W2 x" [* y
) D% h/ e4 p0 B# c( v' k/ {
(1) 先插入columns,也就是先创建列,创建的时候,不要放在initialize_cb()回调函数内,要放在dialogShown_cb()内。
% Y- C" X% |( V/ Q- b创建Columns比较简单,直接搞:8 x2 ^. k, ]& ]. _( g
//Insert Columns        
' u. l, u  l& j2 ^$ f% d) f        tree_control0->InserTColumn(ColumnFirst, "First Column", 80);
" V$ e+ T; n, E1 {6 }: t        tree_control0->InsertColumn(ColumnSecond, "Second Column", 80);% A" |; T7 Z  R9 Y! w1 e
        tree_control0->InsertColumn(ColumnThird, "Third Column", 80);
" N. G' J2 R2 K$ d; l; }- L; r- W5 w3 f! s
) d0 R) k4 y) D9 s( C
// 关于列的序号,最好定义一个枚举类型,方便使用
" a0 o2 l( }  e1 ?& K4 ]& c0 |9 @( Z0 ^
( B6 Q9 Z' K& w2 M2 Q/ `% K" g

! X8 [$ y+ Y9 ]' f8 d3 s) g        //Set resize policy for columns  -- 要不要无所谓/ H3 `3 d0 {8 W# l! }8 }
        tree_control0->SetColumnResizePolicy(ColumnFirst, Tree::ColumnResizePolicyConstantWidth);
% P8 S9 q3 U0 ^& L9 U: N        tree_control0->SetColumnResizePolicy(ColumnSecond, Tree::ColumnResizePolicyConstantWidth);
- r1 ]4 b5 ^4 w* s( [* j0 O0 l0 [        tree_control0->SetColumnResizePolicy(ColumnThird, Tree::ColumnResizePolicyConstantWidth);
% |( M, [% F+ q7 o( H+ {; E
4 V( w9 j2 a, @. `- `' \, G* b5 ]
* v$ b# ?* I3 A9 u# B, H6 f6 ~2 Y
        //Let the second column interpret the text as icon  //是不是显示图标在列的前面3 r% O2 k2 x+ Z9 ?, S
8 A0 c6 F. B# R/ F! j% A9 d
( V$ I. }8 d/ a  b0 S6 P$ K* W
        tree_control0->SetColumnDisplayType(ColumnSecond, Tree::ColumnDisplayIcon);        
) _. F+ x0 b4 e- {  K% V5 P( O  `! C1 _

( L* D: L$ j8 v& _5 e$ {$ B' ](2)创建Node,一般情况下根据控件按钮添加,当然如果你想一开始对话框就显示所有的node,那么还是在
dialogShown_cb()继续写。
3 v6 h% F% A2 L# k# I5 y9 u9 _) O. V9 q' I1 r1 s/ u' ]

9 Q  z4 m6 C- i. KNode的创建,基本就是先创建再插入。9 O/ l. m2 a3 S  p# y% t, f' x$ p! k+ ]
! z) w" I4 H1 W  i9 Q5 y; `

0 b; P' e1 j, k7 x+ hBlockStyler::Node *node = tree_control0->CreateNode(“plmhome”); //创建& d2 Z* e+ d" T3 o
tree_control0->InsertNode(node,parentNode,afterNode,tree_control0->NodeInsertOptionSort); //插入
% E1 u+ S. x; d9 y//如果没有ParentNode和afterNode 就全部设为 NULL
* |( E9 w$ ]! Q
+ H2 M, C/ O, k* R+ t
" _% y" U& d$ x1 F+ C- i
基本就ok了!1 m& E4 k3 e  ]$ T. I

8 Q9 T* ]- m3 ]9 I+ W

, x! K, Z5 e2 B1 `2 R, ?6 Z' A(3) 如果要对对应的列添加值,那就是通过设置 节点的显示内容4 @+ Z! o! S3 `1 o

4 {9 b+ g$ ^4 J) R$ G% ^
/ B. u# l; _3 [5 P7 J- T# W" M% u1 K
Node->SetColumnDisplayText(Column2,"plmhomedisplay");     
' V" T8 ^( X6 P: j4 k; v& q7 y
5 u- ^  O) X( @

8 L: I) ]# p& ?, Z' J
! C  j$ n. i" e
$ a# _  k$ p4 {- M5 g
2 P2 J# F8 l3 Y4 i- ?

# `; k3 R8 x" _; ^
" @. y) u/ m) e3 L
, v0 M& v: i2 c1 Y" W2 D) p6 W
' o/ H$ G. l0 Q

9 n* k; P! N' x* [, d! M
上海点团信息科技有限公司,承接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二次开发专题模块培训报名开始啦

    我知道了