MFC
2010.06.24 15:04

CTree Ctrl 맴버 요약

조회 수 43725 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print
?

단축키

Prev이전 문서

Next다음 문서

+ - Up Down Comment Print

CTreeView에서 CTreeCtrl을 얻으려면?

  • GetTreeCtrl() 함수를 사용합니다.

전체 개수를 얻기

  • GetCount()함수를 사용합니다.
extern CTreeCtrl* pmyTreeCtrl;
...
pmyTreeCtrl->DeleteAllItems();
ASSERT(pmyTreeCtrl->GetCount() == 0);

노드 들여쓰기 정도를 조절하기

  • GetIndent(), SetIndent(픽셀수) : 하위 노드가 들여쓰기되는 간격을 얻어오거나 설정합니다.
extern CTreeCtrl* pmyTreeCtrl;
// 들여쓰기를 2배로 지정합니다.
UINT uIndent = pmyTreeCtrl->GetIndent();
pmyTreeCtrl->SetIndent(2*uIndent);

트리상의 특정 노드를 검색하기

  • 노드핸들 = GetNextItem(기준노드, 옵션) : 기준노드를 옵션에 지정된 조건에 따라 검색합니다. 주요 옵션은 다음 표를 참고 하세요.
TVGN_CARET 현재 선택된 노드를 반환한다.
TVGN_PARENT 지정한 노드의 부모노드를 반환.
TVGN_CHILD 첫번째 자식 노드를 반환한다. 앞에 지정하는 기준노드는 반드시 NULL이어야 한다
TVGN_NEXT 다음 동료 노드를 반환.
TVGN_PREVIOUS 이번 동료노드를 반환.
TVGN_FIRSTVISIBLE 트리콘트롤내에서 맨 첫번째로 보이기 시작하는(화면상의 맨위에 있는) 노드를 반환.
TVGN_NEXTVISIBLE 다음으로 보이는 노드를 반환.
TVGN_PREVIOUSVISIBLE 바로 전에 보이는 노드를 반환.

현재 노드의 자식노드가 있는지 검사

  • ItemHasChildren(검사할노드) : 지정한 노드가 자식이 있는지 여부를 bool로 반환

지정한 노드를 펼치거나 닫기

  • Expand(지정할노드, 옵션)을 사용한다. 옵션은 다음 표를 참조한다.
TVE_COLLAPSE 지정한 노드의 자식들을 숨긴다.
TVE_COLLAPSERESET 지정한 노드의 자식들을 숨기고 모두 지워버린다.
TVE_EXPAND 지정한 노드의 자식들을 확장시킨다.
TVE_TOGGLE 지정한 노드의 확장/숨김을 토글한다.

노드에 특정 데이타를 연결하기

  • 다음 두 함수를 사용하여 이것을 수행한다.
    DWORD GetItemData( HTREEITEM hItem ) const;
    BOOL SetItemData( HTREEITEM hItem, DWORD dwData );
    
  • 주의할 점은 각 노드에 연결되는 값은 DWORD라는 점이다. 이것을 보통 포인터를 캐스팅해서 대입해서 쓰는 것이 보통인데, 이때 각 노드마다 GetItemData()를 사용하여 데이타가 할당되어있는지 확인하여야 한다. 보통 기본으로 이 데이타는 0(NULL)로 설정되어있다.

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5