MFC
2010.06.24 15:04

CTree Ctrl 맴버 요약

조회 수 42209 댓글 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)로 설정되어있다.

Dreamy의 코드 스크랩

내가 모으고 내가 보는

List of Articles
번호 분류 제목 날짜 조회 수 추천 수
446 Android Android Animation Interpolator(보간기) 종류 2020.12.01 5087 0
445 LINUX mutt Gmail 설치, 사용 / Ubuntu 18.04 환경 2019.11.25 5112 0
444 PHP SQL 일정 시간단위로 데이터 검색하기 2020.02.12 5119 0
443 LINUX Ubuntu php5.6 , php7.1 설치 및 셋팅하기 2020.02.11 5261 0
442 Python [tensorflow] 텐서플로우 문서 한글번역본 2018.03.22 5307 0
441 Python [tensorflow] 선형회귀 예제 2018.02.05 5526 0
440 LINUX vi 설정하기(.vimrc) 2019.02.01 5614 0
439 Android [Git] git add 취소하기, git commit 취소하기, git push 취소하기 2021.09.30 5642 0
438 Pi 아두이노에 도움이 되는 전자부품들 2018.06.20 5712 0
437 Pi 라즈베리파이를 NAS로 사용하기 2017.10.18 5782 0
436 HTML5 [Javascript] Promise 이해하기 2018.01.04 5850 0
435 Android 맨날 까먹는 버튼 클릭 이벤트 핸들러 코드 2014.12.17 5961 0
434 Python 디렉토리 없으면 만들기 2019.03.30 5973 0
433 Pi 부품 구매 2016.11.15 6132 0
432 Pi 라즈베리파이 커널 컴파일 2017.10.18 6143 0
목록
Board Pagination ‹ Prev 1 2 3 4 5 6 7 8 9 10 ... 34 Next ›
/ 34

나눔글꼴 설치 안내


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

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

설치 취소

Designed by sketchbooks.co.kr / sketchbook5 board skin

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5

Sketchbook5, 스케치북5