Q&A

  • Re: 트리뷰(TreeView) 컴포넌트에서...
안녕하세요. 최용일입니다.



서브 노드 전체를 펼처 보여주는 방법



begin

TreeView1.FullExpand;

end;



일부 특정한 서브노드만 펼칠때



어떤노드.Expand(True); // False = 그노드의 서브노드만...

// True = 그 노드의 모든 서브노드도... 서브의서브.. 서브의 서브의 서브...



Ex) TreeView1.Items[0].Expand(True);



서브 노드 하나 추가시에 추가된 노드에 포커스를 가질수 있는 방법



begin

TreeView1.Selected := TreeView1.Items.Add(nil, 'New Node');

TreeView1.SetFocus;

end;



현재 추가하고자 하는 노드가 이미 트리뷰 컴포넌트에 존재하는지 체크하는 방법



procedure TForm1.NodeExist(NodeText: string);

var

Index: Integer;

begin

for Index := 0 to TreeView1.Items.Count - 1 do

begin

if CompareText(TreeView1.Items[Index].Text, NodeText) = 0 then

begin

ShowMessage('이미노드가 존재하네요...');

Exit;

end;

end;

end;



// 더 빠르게 찾는 방법

procedure TForm1.NodeExist(NodeText: string);

var

CurNode: TTreeNode;

begin

CurNode := TreeView1.Items.GetFirstNode;

repeat

if CompareText(CurNode.Text, NodeText) = 0 then

begin

ShowMessage('이미노드가 존재하네요...');

Exit;

end;

CurNode := CurNode.GetNext;

until (Node = nil);

end;



^^ 항상 즐코하세요...



장재형 wrote:

> 안녕하세요..

> 바쁘신 와중에라도 짬을 내어서 가르켜 주시면 감사하겠습니다.

>

> 트리뷰(TreeView) 컴포넌트에서 서브 노드 전체를 펼처 보여주는

> 방법과 서브 노드 하나 추가시에 추가된 노드에 포커스를 가질수

> 있는 방법, 그리고 현재 추가하고자 하는 노드가 이미 트리뷰

> (TreeView) 컴포넌트에 존재하는지 체크하는 방법좀 가르켜

> 주세요...

>

> 고수님들의 조언을 기다립니다.

>

0  COMMENTS