procedure TT101Fm3.TreeView1Expanding(Sender: TObject; Node: TTreeNode;
var AllowExpansion: Boolean);
begin
case Node.Level of
0:
begin
TNode1 := Node.getFirstChild;
TNode3 := TNode1.Parent; //부모노드값을 구한다
clcd := TNode3.Text;
clcd := Copy(clcd,1,4);
for i := 1 to Node.Count do begin
brcd := TNode1.Text;
brcd := Copy(brcd,1,3);
with SQLjob do begin
Close;
sql.Clear;
//SQL문 생략 clcd,brcd를 참조함
Open;
while (not Eof) do begin
TreeView1.Items.AddChild(TNode1,FieldByName('JOBNO').AsString);
Next;
end;
Close;
end;
TNode1 := TNode1.getNextSibling;
end;
end;
end;
end;
부모노드를 두세번 접었다 펼치면 위의 while 구문에 따리 처음 1개 다음2개
다음3개 막늘어 납니다.
Tnode값을 초기화 해야 하는것은 알겠는데....
(몇일전 질문에서도 초기화 해야 된다고는 답변을 해 주었는데요...)
그 방법을 모르겠네요...for문 안 어디선가 해주어야 할것 같은데...
Delete, Clear를 해주면 TNode1 := TNode1.getNextSibling; 요기서
실행에러가 나고...
한수 가르침 부탁드립니다. 감사합니다.
DeleteChildren 란 것이 있군여...이걸 잘 활용하면 될듯....