mfc 트리 컨트롤 예제

현재 트리 뷰 컨트롤에서 지정된 항목의 지정된 부분에 대한 경계 사각형을 검색합니다. CTreeCtrl은 모든 MFC 트리 컨트롤 관련 작업을 처리하는 클래스입니다. MFC Tree 컨트롤 항목을 추가하고, 선택한 항목을 검색하고, 항목 및 필요한 다른 이벤트 처리기를 제거하는 데 필요한 모든 메서드가 있습니다. 둘째, ShowMe 기능을 사용하여 트리 컨트롤을 표시하려면 WM_LBUTTONUP 또는 다른 자극을 재정의합니다. CSimpleTreeCtrl 또는 CTreeCtrl 함수를 사용하여 트리에서 항목이 제거된 경우 CSimpleTreeCtrl::TreeCtrlItem 포인터도 제거되므로 항목 포인터를 삭제하는 것에 대해 걱정할 필요가 없습니다. 컨트롤의 현재 배경색을 검색합니다. 트리 컨트롤을 다른 창의 자식 창으로 만들려면 멤버 만들기 함수를 사용합니다. 만들기를 사용하여 트리 컨트롤을 만드는 경우 다른 트리 뷰 스타일 외에 WS_VISIBLE를 전달해야 합니다. CImageList 개체는 영구적이며 완료되면 삭제해야 합니다.

예를 들어 bTextOnly 이 매개변수가 0이 아닌 경우 경계 사각형에는 항목의 텍스트만 포함됩니다. 그렇지 않으면 트리 뷰 컨트롤에서 항목이 차지하는 전체 선이 포함됩니다. 이 문서에서는 MFC 트리 컨트롤을 초기화하고, 트리 컨트롤에 항목을 추가하고, 항목을 검색하고, 항목 및 하나의 이벤트인 선택 변경을 추가하는 방법을 설명합니다. 지정된 항목의 부모가 트리의 루트 노드인 경우 이 함수는 NULL을 반환합니다. TVSIL_NORMAL 트리 보기 항목에 대해 선택되고 선택되지 않은 이미지가 포함된 일반 이미지 목록을 검색합니다. 트리 컨트롤은 물리적 트리로 정렬되었지만 약간 거꾸로 정렬된 항목의 계층적 목록을 표시하는 개체입니다. 항목은 부모-자식 형식으로 표시되어 부모에서 자식, 자식에서 손자까지와 같이 상호 관련된 범주에 속하는 항목을 표시합니다. 또는 폴더에 폴더를 파일로 저장합니다. 다음은 트리 목록의 예입니다: 마지막으로 WM_FLOAT_CTRL 메시지를 처리하여 트리 컨트롤에서 선택한 작업을 수행합니다. 검색 중인 항목이 트리의 루트 노드인 경우 이 함수는 NULL을 반환합니다. 예를 들어 트리 뷰의 루트 노드의 첫 번째 수준 자식에서 TVGN_PARENT 플래그와 함께 이 메시지를 사용하는 경우 메시지가 NULL로 반환됩니다.

트리 뷰의 삽입 표시를 그리는 데 사용되는 색상을 검색합니다. 이 문서에서는 트리 컨트롤의 모든 것을 다루지는 않지만 MFC Tree 컨트롤을 사용하여 몇 가지 기본 수준의 프로그래밍을 수행하는 데 충분해야 합니다. Windows 공통 트리 보기 컨트롤의 기능을 제공합니다. 트리에 „+” 또는 „줄”이 없는 경우 속성 대화 상자를 사용하여 트리 제어 리소스의 단추 및 줄 부족 속성을 변경합니다. 각 트리 컨트롤 항목은 그래픽 사각형으로 경계가 됩니다. 해당 사각형의 점을 클릭할 때마다 항목이 적중되었다고 합니다. 이 메서드는 사각형의 점을 클릭할 때 hItem 매개 변수로 식별된 항목이 적중되도록 가장 큰 사각형을 반환합니다. dwExStyle은 생성되는 컨트롤의 확장 스타일을 지정합니다.

확장 된 Windows 스타일 목록은 Windows SDK에서 CreateWindowEx에 대한 dwExStyle 매개 변수를 참조하십시오. 트리에 속하는 루트를 포함한 각 항목을 노드라고 합니다. 다른 항목에 속하거나 종속된 항목을 리프라고도 할 수 있습니다. 지정된 점 또는 NULL을 차지하는 트리 뷰 항목의 핸들은 항목을 차지하지 않는 경우 점을 차지합니다. 데모 응용 프로그램은 새 트리 컨트롤을 만들고 다른 색상의 일부 항목을 추가합니다.