트리의 구조가
1111+---1112
+---1113+---1114
+---1115
+---1116
+---1117
2222+---2221
+---2223+---2224+---2225
+---2226+---2227
+---2228
라고 가정할때
2224를 클릭시
Edit1.Text에는 2222의 값
Edit2.Text에는 2223의 값
Edit3.Text에는 2224의 값
을 나타내고자 합니다.
TreeView1.Selected.Parent 에 Edit2.Text
TreeView1.Selected.Parent.Parent 에 Edit1.Text
이런 형태말고 쉽게 사용할 수 있는 함수를 알고 싶습니다.
만약 불특정하게 Parent가 다수 존재하는 경우 해당 값을 찾기 위해
Parent를 계속 붙여서 구해야 하니까 불편하거든요.
만일
1115를 클릭시
Edit1.Text에는 1111의 값
Edit2.Text에는 1113의 값
Edit3.Text에는 1115의 값
이 나타나도록 하고 싶습니다.
혹시 좋은 함수나 델파이에서 제공하는 함수가 있는지 궁금합니다.
즉,
해당 항목클릭시 최상위부터 순서대로 클릭위치까지 나타내고 싶습니다.
Level 과 GetPrev 를 사용하면 될듯합니다.
<!-- CodeS -->
var
nNode: TTreeNode;
nI: Integer;
begin
nNode:= TreeView.Selected;
If nNode.Level = 2 Then Exit; // level은 최상위가 0 부터 한단계의 Depth마다 1씩증가
Edit1.Text:= nNode.Text;
nNode:= nNode.GetPrev;
Edit2.Text:= nNode.Text;
....
End;
<!-- CodeE -->
아니면..뭐 또 다른 방법이 있겟죠...-,.ㅡ;;;
그럼..