C++Builder Programming Forum
C++Builder  |  Delphi  |  FireMonkey  |  C/C++  |  Free Pascal  |  Firebird
볼랜드포럼 BorlandForum
 경고! 게시물 작성자의 사전 허락없는 메일주소 추출행위 절대 금지
C++빌더 포럼
Q & A
FAQ
팁&트릭
강좌/문서
자료실
컴포넌트/라이브러리
메신저 프로젝트
볼랜드포럼 홈
헤드라인 뉴스
IT 뉴스
공지사항
자유게시판
해피 브레이크
공동 프로젝트
구인/구직
회원 장터
건의사항
운영진 게시판
회원 메뉴
북마크
볼랜드포럼 광고 모집

C++빌더 Q&A
C++Builder Programming Q&A
[22628] 질문. TreeView에서 자기 자신에게 떨어뜨리기....
김성국 [kimskpro] 713 읽음    2002-11-14 13:45
ㅜㅜ 이상하게 이질문에 대해선 명쾌한 답변이 없군요...그래서 이번엔 소스를 아예 올립니다 ^^;

같은 트리내에서 하위노드가 있는 것을 다른 노드밑으로 이동시킬때(여기선 걍 delete는 신경
쓰지 않았습니다.) 계속 while 에서 에러가 나네요....

객체를 넣은상태가 name이라는 것이 객체 안에 있는 변수거든요..
feature가 n이면 하위노드들이 존재하는 경우입니다.

DropTarget에 옮길 노드의 상위노드를 생성하고..(node3)
그 밑에 옮길노드의 하위노드들을 while문안에서 node3 밑으로 가져다가 붙이는 루틴입니다.



void __fastcall TSunRo_Form::TreeView1DragDrop(TObject *Sender,
      TObject *Source, int X, int Y)
{
        if (dynamic_cast<TTreeView *>(Source) !=0) {
                TTreeNode *node3 = TreeView1->DropTarget;
                node3 = TreeView1->Items->AddChildObject(
                TreeView1->DropTarget,PAddrDP(TreeView1->Selected->Data)->name,
                TreeView1->Selected->Data);
               
                //여기까진 혼자 있을때...옮기는거....이건 잘되구요...

                //여기서 부터가 하위노드가 있을 경우의 처리
                if (PAddrDP(TreeView1->Selected->Data)->feature =="N"){

                        //여기서 부터 안되는군요...자꾸 메모리참조에러같은게 나는데..
                        //도저히 못잡아 내겠습니다.
                        while(TTreeNode *node = TreeView1->Selected->GetNextChild(node)){
                             TTreeNode *node1 =
                             TreeView1->Items->AddChildObject(node3,
                             PAddrDP(node->Data)->name,node->Data);
                        }
        
        
               }
        }
}



고수님들의 조언부탁드립니다........
그럼 즐푸~~

+ -

관련 글 리스트
22628 질문. TreeView에서 자기 자신에게 떨어뜨리기.... 김성국 713 2002/11/14
22641     Re:[자답] 김성국 682 2002/11/14
Google
Copyright © 1999-2015, borlandforum.com. All right reserved.