ROWLIST 샘플: 목록 뷰에서 전체 행 선택 설명
업데이트: 2007년 11월
ROWLIST 샘플에서는 CListView MFC 공용 컨트롤 클래스의 보고서 모드에서 전체 행을 선택하는 방법을 보여 줍니다. 이 샘플은 전체 행 선택을 목록 뷰 컨트롤의 추가 뷰 모드로 제공하는 다시 사용할 수 있는 클래스인 CListViewEx를 구현합니다. CListViewEx는 소유자 그리기 모드를 사용하여 컨트롤의 모든 그리기 작업을 수행합니다. 사용자의 프로젝트에서 이 클래스를 직접 또는 기본 클래스로 사용할 수 있습니다. ROWLIST에서는 목록 뷰 컨트롤이 있는 상태 및 오버레이 이미지를 사용하는 방법도 보여 줍니다.
보안 정보: |
---|
이 샘플 코드는 개념을 보여 주기 위해 제공되며 가장 안전한 코드 작성 방법을 제시하지 않을 수 있으므로 응용 프로그램이나 웹 사이트에서 사용할 수 없습니다. Microsoft는 샘플 코드를 원래 용도 이외의 다른 용도로 사용하는 경우 발생하는 부수적이나 파생적인 손해에 대해 책임을 지지 않습니다. |
샘플 및 이를 설치하기 위한 지침을 가져오려면
Visual Studio의 도움말 메뉴에서 샘플을 클릭합니다.
자세한 내용은 샘플 파일 찾기를 참조하십시오.
최신 버전 및 전체 샘플 목록은 Visual Studio 2008 Samples 페이지에서 온라인으로 사용할 수 있습니다.
컴퓨터의 하드 디스크에서도 샘플을 찾을 수 있습니다. 기본적으로 샘플과 추가 정보 파일은 \Program Files\Visual Studio 9.0\Samples\ 아래의 폴더에 복사됩니다. Visual Studio Express Edition의 경우에는 모든 샘플이 온라인에 있습니다.
샘플 빌드 및 실행
ROWLIST샘플을 빌드하고 실행하려면
솔루션 파일인 rowlist.sln을 엽니다.
빌드 메뉴에서 빌드를 클릭합니다.
디버그 메뉴에서 디버깅하지 않고 시작을 클릭합니다.
ROWLIST를 실행하면 뷰가 CListView 파생 클래스인 SDI(단일 문서 인터페이스) 응용 프로그램이 표시됩니다. 이 뷰에는 여러 가지 색과 해당 색에 대한 추가 데이터를 나타내는 항목이 있습니다. 목록 뷰 컨트롤은 처음에 전체 행 선택이 가능한 보고서 모드로 나타납니다. View 메뉴와 도구 모음을 사용하면 다른 뷰 모드를 선택할 수 있습니다.
상태 이미지는 처음에 각 항목의 왼쪽에 빈 사각형으로 설정됩니다. 상태 이미지를 클릭하면 해당 항목의 이미지는 캡션 표시줄에 표시되는 아이콘이 됩니다. 상태 이미지가 표시되지 않는 경우 항목을 두 번 클릭하여 상태를 변경할 수 있습니다.
CListViewEx 클래스
CListView에서 파생된 CListViewEx 클래스는 전체 행 선택 모드를 구현하는 다시 사용할 수 있는 클래스입니다. 이 클래스는 목록 뷰 컨트롤의 소유자 그리기 모드를 완전히 지원하며, 모든 이미지 및 레이블에 대한 그리기 코드를 구현함으로써 전체 행 선택 기능을 제공합니다. CListViewEx는 컨트롤의 이미지 및 레이블을 보고서 모드에서와 똑같이 표시하며 전체 행 선택 기능을 추가합니다. CListView와 달리 이 클래스에는 SetFullRowSel과 GetFullRowSel이라는 두 개의 추가 멤버 함수만 있습니다. 이 두 함수는 전체 행 선택 모드를 설정하거나 쿼리하는 데 사용됩니다.
이 클래스에서 클래스를 파생시키거나 이 클래스를 직접 사용하는 방법으로 사용자의 프로젝트에서 이 클래스를 다시 사용할 수 있습니다. 이 클래스를 사용하는 가장 간단한 방법은 응용 프로그램 마법사를 사용하여 CListView 파생 클래스가 있는 응용 프로그램을 만든 다음 기본 클래스를 CListViewEx로 변경하는 것입니다.
CListView가 있는 상태 및 오버레이 이미지 사용
ROWLIST에서는 상태 및 오버레이 이미지의 사용 방법을 보여 줍니다. 상태 이미지는 처음에 각 항목의 왼쪽에 빈 사각형으로 설정됩니다. 상태 이미지를 클릭하면 해당 항목의 이미지는 캡션 표시줄에 표시되는 아이콘이 됩니다. 이에 따라 해당 항목의 상태 아이콘은 확인 표시가 있는 사각형으로 변경됩니다. CRowListView::OnLButtonDown에는 상태 아이콘이 선택되는 경우 확인 표시를 삽입하고 항목에 대한 상태 아이콘을 변경하는 코드가 포함되어 있습니다.
상태 이미지가 표시되지 않으면 현재 사용되는 이미지는 해당 이미지 위에 오버레이 이미지, 즉 확인 표시가 있는 회색 사각형으로 표시됩니다. 특정 항목의 상태를 변경하려면 두 번 클릭하면 됩니다. 이렇게 하면 오버레이 이미지가 설정되거나 설정 해제됩니다. 두 번 클릭에 대한 구현 코드는 CRowListView::OnLButtonDblClk에 있습니다.
참고: |
---|
이 샘플을 비롯한 일부 샘플은 Visual C++ 마법사, 라이브러리 및 컴파일러의 변경 내용을 반영하도록 수정되지 않았지만 해당 작업의 수행 방법을 보여 줍니다. |