|
请使用QQ关联注册PLM之家,学习更多关于内容,更多精彩原创视频供你学习!
您需要 登录 才可以下载或查看,没有账号?注册
x
( o8 u0 u' M6 Y" X
简单说说顺序和注意事项:
5 Y" u J- \' R4 J$ w# L" d, V4 C( _5 K; o1 B! l, c
6 o& `" |$ H# M0 o/ F+ F4 F; B! f(1) 先插入columns,也就是先创建列,创建的时候,不要放在initialize_cb()回调函数内,要放在dialogShown_cb()内。 ) z6 F5 _; a4 ]- d: {0 L A
创建Columns比较简单,直接搞:/ G+ O: o/ p2 ^ h+ k. x; s8 @# Y
//Insert Columns : J& @: e2 m/ Q* ^* ~% d
tree_control0->InserTColumn(ColumnFirst, "First Column", 80);
3 A5 D& n, r$ q. c* j0 V tree_control0->InsertColumn(ColumnSecond, "Second Column", 80);( m6 F+ G1 e' j! F7 l' ~9 b
tree_control0->InsertColumn(ColumnThird, "Third Column", 80); d8 {* b% x3 L
/ R) Y d9 S0 h9 l/ T6 j- y
! K" i7 i0 u9 H$ W* r! U/ {
// 关于列的序号,最好定义一个枚举类型,方便使用! u: @. R7 ^3 m
5 K) h7 a& P# y6 C2 k3 E/ X1 i% L! z$ k4 G
//Set resize policy for columns -- 要不要无所谓
# M r3 l9 ~+ I2 F4 k tree_control0->SetColumnResizePolicy(ColumnFirst, Tree::ColumnResizePolicyConstantWidth);, D# C) s; V5 X- L/ g& |
tree_control0->SetColumnResizePolicy(ColumnSecond, Tree::ColumnResizePolicyConstantWidth);
/ K, t Q- J( x0 A6 g$ q tree_control0->SetColumnResizePolicy(ColumnThird, Tree::ColumnResizePolicyConstantWidth);( S" H+ j5 g9 `, c( g
" m& P# D8 z' M2 C' D* q* h
' w2 E7 Q; s* `
//Let the second column interpret the text as icon //是不是显示图标在列的前面3 t$ M" g& z, h& Q
& h) D7 {7 z" J" F4 t6 e6 C4 J9 `4 |" f5 G2 ]! [/ S1 M+ ^3 T
tree_control0->SetColumnDisplayType(ColumnSecond, Tree::ColumnDisplayIcon);
$ a3 _" s+ b- K# s, j+ D$ \+ L2 A1 U. B0 X8 `# a
7 ]* Z9 C$ p' G( s; R, ^ G' K
(2)创建Node,一般情况下根据控件按钮添加,当然如果你想一开始对话框就显示所有的node,那么还是在dialogShown_cb()继续写。
9 ^, p- m6 U9 ?8 G6 j W' V4 \. s( `2 b( {9 v7 s
L1 c" @ K3 d' B- [Node的创建,基本就是先创建再插入。' {1 B! E6 V/ }! c0 O& }2 l
* D: e8 c, s- |5 N3 i5 h/ E1 @
BlockStyler::Node *node = tree_control0->CreateNode(“plmhome”); //创建: c. J0 a# B8 t) \- f8 l# D' ]( |
tree_control0->InsertNode(node,parentNode,afterNode,tree_control0->NodeInsertOptionSort); //插入' ^: E1 P4 ^5 `/ Y
//如果没有ParentNode和afterNode 就全部设为 NULL
- a: @' w( P7 ?. j% y$ P- C8 [1 x/ x0 P: e2 j# B. U
* M9 q1 {8 ^' F% N9 L0 p. E' B0 r' D
基本就ok了!: [ L- b; l$ l7 f3 x, p
1 M7 e/ {, R, k' \7 J
& k2 l4 }& l' R+ e(3) 如果要对对应的列添加值,那就是通过设置 节点的显示内容
8 F* s4 }; e! e8 r) ]% Z& h
3 ?' H3 U, ^0 L7 H
# U0 [# ?8 b4 o/ SNode->SetColumnDisplayText(Column2,"plmhomedisplay"); $ c* K9 r9 J+ Q3 f6 K& N
3 q1 j& x' K0 E- n+ v/ m6 w5 r: e1 r2 W# [5 `. F2 n9 ]# i$ D
+ Y2 K% }. `; l& w1 J; E
% F! _) n4 [( _ O% ~; R! u7 t. m, j: w$ R- S# q) W% f& F
9 w% U# @9 l: t% q3 L' N
% c( v: J7 J1 h, t- C) R
% @# x4 Y- F% C# H% l# M
- q9 ]) d) [- [- |& I4 Z' w! O( L) ^( e0 [7 K
|
|