|
|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
& k6 r% |5 u. B% _
简单说说顺序和注意事项:8 D0 j) x2 Y. w e
; {2 J& `$ Z) f4 ]3 h: W
( ~) e0 `$ y! b6 b(1) 先插入columns,也就是先创建列,创建的时候,不要放在initialize_cb()回调函数内,要放在dialogShown_cb()内。 6 C. B: f4 z1 k
创建Columns比较简单,直接搞:
$ i, r1 t! V3 H) i, u //Insert Columns
( Z) ~* x. P5 E8 { tree_control0->InserTColumn(ColumnFirst, "First Column", 80);+ w; d z& J" m$ @* y3 _5 B
tree_control0->InsertColumn(ColumnSecond, "Second Column", 80);4 L2 D a! ~: L$ B$ I v9 R
tree_control0->InsertColumn(ColumnThird, "Third Column", 80);
4 d4 u w6 ]. ?& ^$ c) b& V0 f2 u+ V0 s/ E
[* S( z) z3 u S1 \
// 关于列的序号,最好定义一个枚举类型,方便使用
' Q7 D! b4 X. f7 `0 ^" U% G7 O( e$ J* B# S, X6 e6 s
3 [& I) P& T! ^ //Set resize policy for columns -- 要不要无所谓
4 {2 e& Q+ r7 F tree_control0->SetColumnResizePolicy(ColumnFirst, Tree::ColumnResizePolicyConstantWidth);2 Z% h- `3 u* w. ]
tree_control0->SetColumnResizePolicy(ColumnSecond, Tree::ColumnResizePolicyConstantWidth);
! v% @, r% R# F/ x9 A2 u tree_control0->SetColumnResizePolicy(ColumnThird, Tree::ColumnResizePolicyConstantWidth);$ }( z y# u5 Q N
: g: H. N% t& R% B0 C$ y. @" F1 V( p W$ n
//Let the second column interpret the text as icon //是不是显示图标在列的前面. i0 _; d, M! M& x
0 a' ?" I( Q# d& F+ c- Z* m! L3 P- }# Z# l
tree_control0->SetColumnDisplayType(ColumnSecond, Tree::ColumnDisplayIcon);
2 ?- T/ [- {- {, Y: p
% B; M6 ]4 W; F+ h& Z$ X* C' i( _) v' L$ h3 P7 H: @# f
(2)创建Node,一般情况下根据控件按钮添加,当然如果你想一开始对话框就显示所有的node,那么还是在dialogShown_cb()继续写。+ [% f, q. k( q R" y" g
* Q; K1 `( G* j# L, F
4 O+ R$ r6 m' ^, Q; s
Node的创建,基本就是先创建再插入。
$ y. j7 m8 o/ _. d0 ~9 L2 X! X
3 Z2 \/ @: I# t; L4 }- k& t
# `9 Z6 r: o& d* s/ m6 s9 jBlockStyler::Node *node = tree_control0->CreateNode(“plmhome”); //创建
6 u" R ?9 s* _5 Rtree_control0->InsertNode(node,parentNode,afterNode,tree_control0->NodeInsertOptionSort); //插入- s. E: r' O' b, B2 I9 n+ B
//如果没有ParentNode和afterNode 就全部设为 NULL
3 o9 @8 r. q* F0 R% R+ y0 e3 e7 O4 @ ^. Q5 H
6 h v& F5 \, u2 @& S基本就ok了!% g5 r7 ?4 F: ]" Y; ^
|6 s: c% X6 v: D2 H( P7 H
. K$ A( v0 b Q5 i4 N! ^8 b(3) 如果要对对应的列添加值,那就是通过设置 节点的显示内容
7 Z }- @: T) l
2 v( l h& \4 [- v5 X
9 V( K3 o* y i9 V7 X8 i7 yNode->SetColumnDisplayText(Column2,"plmhomedisplay"); 3 s" \7 [. l. Q/ z; n2 H' p
: K3 J1 N9 k, B1 }0 T+ M. A4 V) E* p- o. W% g
' t$ I3 s( W6 { a+ K; m
, r: T: O k& r8 B: ]+ T/ Z+ \
! ]5 H h* F; d: l# O3 K: J) L9 h" r# t# N9 Y9 h
1 K9 Y: U `- P O& R6 J. e9 _8 W! n9 K' T/ X3 v9 Z* ]) k' e
) l9 Y3 Y! C: O) w' R! n% p
3 z# b% V* M7 r2 R. E |
|