|
안녕하신지요....
TreeView에서 TTreeNode를 생성하면서 addObject(티노드,스트링,객체) 를 써서 객체에
필요한 순번이라든지, 이름 , 우편번호등을 저장한후 노드에 붙이고 있는데...
TListView로 옮기는 과정에서...
TListItem을 생성해서
거기다 위 노드에서 생성한 객체를 넣을려고 하는데...
pitems->subitems->addObject("초기값",TObject)
객체를 붙일수 있는 방법이 TObject 밖에 없더군요..
그래서 선택된 티노드나 Sender로 해봤는데....
typedef struct AddrDP
{
AnsiString id;
AnsiString name;
AnsiString from;
AnsiString seq;
AnsiString attr;
AnsiString post;
AnsiString feature;
AnsiString admin_dist_id;
AnsiString isfrom;
AnsiString queried ;
} TAddrDP;
typedef TAddrDP* PAddrDP;
이렇게 생성된 객체였기 때문에 포인터형으로 캐스팅해서
데이터를 리스트뷰의 onChange에서
받아보면...
Label1->Caption =PAddrDP(DPList->Selected->Data)->id;
Label2->Caption =PAddrDP(DPList->Selected->Data)->name;
Label3->Caption =PAddrDP(DPList->Selected->Data)->post;
Label4->Caption =PAddrDP(DPList->Selected->Data)->feature;
이렇게 테스트해보면 아무객체가 없을대 나오는 에러메시지가 나오고 실제로
트리노드에서 붙었던 객체가 TObject를 타고 넘어오지 못하더군요....
트리노드에서 생성하면서 붙었던 Data에 들어간 사용자정의 클레스의 데이터객체가
리스트아이템에 넘어갈수 있는 방법에 대한 아이디어를 부탁드립니다....
고수님들 부탁드려요....
|