mfc 리스트 박스 예제

작업 에서 목록 보기 컨트롤의 예제 사용 법 제공: 목록 상자에는 사용자가 보고 선택할 수 있는 파일 이름과 같은 항목 목록이 표시 됩니다. 목록 상자는 CListBox 클래스로 표시됩니다. 단일 선택 목록 상자에서 사용자는 하나의 항목만 선택할 수 있습니다. 다중 선택 목록 상자에서 항목 범위를 선택할 수 있습니다. 사용자가 항목을 선택하면 항목이 강조 표시되고 목록 상자가 부모 창에 알림 메시지를 보냅니다. 다른 선택 속성을 가진 목록 상자의 4 가지 스타일이 있습니다. 목록 상자의 스타일을 변경하려면 오른쪽 단추를 클릭하고 속성을 선택합니다. 그런 다음 스타일 탭을 선택합니다. 이벤트 처리: 목록 상자는 다음과 같은 알림 메시지를 받습니다. 목록 상자에 문자열을 추가하는 것은 단순히 AddString() 함수를 호출하는 것만으로도 매우 간단합니다. 목록 상자에 LBN_SORT 스타일이 있으면 새 항목이 올바른 위치에 삽입됩니다.

그렇지 않으면 목록의 끝에 추가됩니다. 데모에서 `목록 스타일 전환`으로 향하는 목록 상자는 LBN_SORT 스타일을 변경합니다. 코드는 이전 목록 상자를 삭제하고 토글 단추를 클릭할 때마다 새 목록 상자를 만듭니다. listbox 차원을 결정하기 위해 소유자 그리기 목록 상자를 만들 때 프레임워크에서 호출됩니다. 재정의에서 값을 반환하여 프레임워크에 수행한 작업을 알려야 합니다. 반환 값 -1 또는 – 2는 항목을 선택하는 모든 측면을 처리했음을 나타내며 목록 상자에서 추가 작업이 필요하지 않음을 나타냅니다. 반환하기 전에 – 1 또는 – 2, 당신은 선택을 설정하거나 캐리트 또는 둘 다 를 이동할 수 있습니다. 선택 영역을 설정하려면 SetCurSel 또는 SetSel을 사용합니다.

카를을 이동하려면 SetCaretIndex를 사용합니다. 이러한 작업이 작동하려면 컨트롤에 “LVS_REPORT” 스타일이 있어야 합니다. CFormView에 대한 대화 상자를 포함하여 대화 상자의 목록 컨트롤의 경우 이 스타일을 대화 상자 편집기에서 설정할 수 있습니다. CListView를 사용 하거나 만들기를 사용 하 여 목록 컨트롤을 만드는 경우 스타일과 함께 PreCreateWindow 재정의에서 설정할 수 있습니다. 종종 프로그램은 실제로 문자열이나 인덱스 이외의 값을 사용하며 목록의 항목이 정렬되었는지 여부에 관계없이이 값을 올바르게 값으로 얻어야합니다.