|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
* E, k( T7 {5 \" L1 W3 |简单说说顺序和注意事项:
) z% I7 Y3 |# Q9 U% i* N8 q6 V; ~% }3 ^, g
* Y3 f6 [! Z! Q5 A
(1) 先插入columns,也就是先创建列,创建的时候,不要放在initialize_cb()回调函数内,要放在dialogShown_cb()内。
* K5 n8 B" u( S, C% G创建Columns比较简单,直接搞:
8 h* i0 B6 w6 O6 a I1 Z1 ^ //Insert Columns C4 o2 P7 L% }$ N0 {9 Y
tree_control0->InserTColumn(ColumnFirst, "First Column", 80);1 c2 x% o) j6 w: c
tree_control0->InsertColumn(ColumnSecond, "Second Column", 80);
5 X3 n g1 j( T# | tree_control0->InsertColumn(ColumnThird, "Third Column", 80);% @- _ v9 }! w% s9 x
, O$ P H) y9 I# z! }: W ~/ M& k
; Q/ s$ J! b7 ?2 r. s// 关于列的序号,最好定义一个枚举类型,方便使用1 `; m3 u8 L9 v' G: U. d
& t: O0 V5 \% {' H) n
5 Q- s2 E! F6 Q* c. ?7 j+ a //Set resize policy for columns -- 要不要无所谓
) i( [' a9 ?. W7 @. v' g tree_control0->SetColumnResizePolicy(ColumnFirst, Tree::ColumnResizePolicyConstantWidth);$ k: i/ `; Y& q) V* A9 X) u
tree_control0->SetColumnResizePolicy(ColumnSecond, Tree::ColumnResizePolicyConstantWidth);
3 `! ]4 D+ ?! b' b tree_control0->SetColumnResizePolicy(ColumnThird, Tree::ColumnResizePolicyConstantWidth);
" Z) j3 i. f6 L! _; T b( j
4 n/ g8 a$ p9 h, U( R. L: }7 Y" f/ p6 ]% E ?& L
//Let the second column interpret the text as icon //是不是显示图标在列的前面/ @3 \3 b* }6 q3 B. _
5 s* ?+ j% Z8 o, E3 p) ]7 R' _
tree_control0->SetColumnDisplayType(ColumnSecond, Tree::ColumnDisplayIcon);
1 M" l: z" `9 X1 A+ Y) E
. U9 S7 ?# Z' p; _7 g9 d6 S$ l' n: P& k- D
(2)创建Node,一般情况下根据控件按钮添加,当然如果你想一开始对话框就显示所有的node,那么还是在dialogShown_cb()继续写。% d' `0 f! m& _- C# b+ u( `
' A5 Y0 s& H9 K5 C$ k
0 v5 Z- P7 g) I
Node的创建,基本就是先创建再插入。9 K* |! u7 j! q! p4 Z5 }
: Q1 r- Z( V! ]
! f: J- r# E; b: f. z4 a2 s, }BlockStyler::Node *node = tree_control0->CreateNode(“plmhome”); //创建
b* N1 K7 y# F: o! ?$ \tree_control0->InsertNode(node,parentNode,afterNode,tree_control0->NodeInsertOptionSort); //插入# P9 H; O, e% o) l5 A5 [/ e
//如果没有ParentNode和afterNode 就全部设为 NULL E7 e4 ?$ u. [% Y( m- b
2 C7 [+ u- p* x* l) w# a
7 H# L1 T. S) p* O0 M1 a
基本就ok了!4 }- x3 h% L# {0 R: @
, D5 L# s! G: [! Y: Z( O
: L" g8 L# w; f u, ?4 y
(3) 如果要对对应的列添加值,那就是通过设置 节点的显示内容
. q3 s# Q u! [2 p0 U7 R1 {* O& Y7 V
0 W$ M5 l2 B! p) k$ ]: ~
$ a; \" {" x1 z6 j) oNode->SetColumnDisplayText(Column2,"plmhomedisplay"); 3 E( G/ q! l& ^" H3 }2 m2 s m) Y
# b5 @/ h. j6 C
8 w7 e8 L. D4 M' I0 {9 B
5 U$ J% [% p7 l7 J2 H4 g( D! `0 \2 b; A4 z* C! p/ @* l8 C
5 E7 Z/ K! M2 c2 E1 Y, w# H! W1 o
4 w+ A5 V. z% Y3 H
2 |0 D2 ~7 }+ w; _0 F T" R0 W/ Z
8 D6 N" J u+ ]( U" r
' D' j, l( P6 c' p. A
# x7 j8 t" A$ L; C
|
|