|
ball... 님이 쓰신 글 :
: ㅜ,ㅜ
ㅠ.ㅠ;
그니까 원하는 indent level의 모든 노드를 보이게 하고 싶은거죠? ^^
이런 것을 한 번에 가능하게 해주는 함수는 물론 없구요..
다음과 같은 방법을 써보시지요..
모든 트리노드를 for-loop으로 검사를 하면서 Level이 원하는 값인
노드를 Expand()로 보여주면 되겠네요.
대충 코드를 적어보면..
for (int i = 0; i < treeview1->Items->Count; i++) {
TTreeNode *node treeview1->Items->Item[i];
if (node->Level == 2) { // 원하는 레벨
Expand(node->Parent);
}
}
이런 식으로 하면 되지 않을까 하네요.
Expand(node->Parent)를 한 이유는 그 아랫 레벨은 보이지 않게
하기 위해서이구요..
좀더 속도를 빠르게 하려면 node->IsVisible이 false인 항목에
대해서만 Expand()를 하면 되겠구요..
실험을 안해봐서 100% 된다는 보장은 못드리겠지만 이 코드를
바탕으로 이런저런 실험을 하셔서 완성해보세요.
|