대화 상자 템플릿에서 비주얼 레이아웃 옵션에 체크리스트 상자가 표시되지 않았기 때문에 ListBox를 배치했습니다. 나는 owner-draw로 설정하고 DDX를 사용하여 관련 클래스 변수를 CListBox 유형에서 CCheckListBox로 변경합니다. 즉, 마법사가 나를 위해 수행하는 변경 사항은 owner-draw로 설정되고 멤버를 변경합니다 가변형. 올바른 문자열, 4 개 항목과 선택 하나, MFC : CCheckListBox 항목이 겹칩니다.
m_List.AddString(_T("One"));
m_List.AddString(_T("Two"));
m_List.AddString(_T("Three"));
m_List.AddString(_T("Four"));
m_List.SetCheck(1,1);
나는 목록을 실행
가 : 내 대화의OnInitDialog
방법에 나는 그와 함께 테스트합니다. 그러나 항목 높이가 잘못되었습니다. 확인란의 높이가 항목 높이를 결정하는 데 사용되어 아래 항목과 겹치는 텍스트로 이어지는 것 같습니다.
각 항목의 높이를 개별적으로 설정하지 않아도 클래스의 기본 동작을 이해하면 안됩니까?
MSDN에서