mfc listbox 예제

By in Non classé on 2 août 2019

우리가 응용 프로그램을 실행할 때, 모든 선택 변경목록 상자에 선택한 문자열을 표시합니다. 목록 상자에 아이콘을 추가해야 하는 경우 목록 상자 리소스에서 아이콘을 사용하는 MFC CListBox 예제를 참조하십시오. 요약: 위의 코드 조각에는 지정된 인덱스에서 항목을 단순히 제거하는 DeleteString()을 사용하는 예도 있습니다. FindString() 또는 FindStringExact()를 사용하여 찾을 수 없는 경우 삭제할 문자열의 인덱스를 찾습니다. 이러한 메시지는 기본적으로 CWnd 기본 클래스의 OnNcCreate, OnCreate, OnNcCalcSize 및 OnGetMinMaxInfo 멤버 함수에 의해 처리됩니다. 기본 메시지 처리를 확장하려면 CListBox에서 클래스를 파생하고 새 클래스에 메시지 맵을 추가하고 앞의 메시지 처리기 멤버 함수를 재정의합니다. 예를 들어 새 클래스에 필요한 초기화를 수행하려면 OnCreate를 재정의합니다. lpsz와일드카드는 파일 사양 문자열을 가리킵니다. 문자열에는 와일드카드(예: *.*)가 포함될 수 있습니다. 이제 nIndex 다음의 모든 항목이 한 위치로 이동합니다. 예를 들어 목록 상자에 두 개의 항목이 포함된 경우 첫 번째 항목을 삭제하면 나머지 항목이 첫 번째 위치에 있게 됩니다. nIndex=0을 첫 번째 위치에 있는 항목에 대해 CListBox에서 항목 검색: 첫 번째 단계는 선택한 항목의 인덱스를 가져옵니다. 아래항목 이름을 검색하는 CListBox 예제를 살펴보십시오.

GetCurSel()은 인덱스 번호를 검색하는 데 사용되며 GetText()는 텍스트를 검색하는 데 사용됩니다. 수정 스타일()이 인상을 줄 수 있더라도 런타임에 이러한 스타일을 변경할 수 없습니다. 원하는 경우 정렬 스타일을 켜고 끕니다. 예를 들어 새 및 만들기를 호출한 다음 삭제하고 스타일을 변경할 때 새 목록을 만들어 목록 상자를 구성하는 것이 가장 좋습니다. 또는 2개의 목록 상자를 겹쳐서 잘못된 스타일로 숨길 수 있습니다. CListBox에서 항목 삭제: 이 부분에서는 목록 상자에서 선택한 항목을 삭제하는 작업을 처리합니다. 첫 번째 단계는 선택한 항목의 인덱스를 가져옵니다 다음 인덱스를 사용 하 여 삭제 합니다. 아래 삭제의 CListBox 예제를 살펴보십시오. 예를 들어 로캘은 정렬된 목록 상자에서 문자열의 정렬 순서를 결정하는 데 사용됩니다. 작업 에서 목록 보기 컨트롤의 예제 사용 법 제공: 멤버 변수 탭을 선택 하 고 만든 목록 보기의 개체 ID를 선택 (내 예제에서 IDC_LIST1) `변수 추가` 단추를 누릅니다: 좋은 물건.

다행은 유용했다. 이 책에 흥미를 가질 수 있습니까? – 그것은 다운로드 C ++ 예제의 엄청난 금액을 포함: http://www.amazon.com/dp/B00V2LR8NI 목록 크기를 결정하기 위해 소유자 그리기 목록 상자를 만들 때 프레임 워크에 의해 호출. 아래와 같이 인덱스를 설정하여 항목을 선택할 수 있습니다: 이 멤버 함수는 LBS_MULTIPLESEL 스타일이 있는 목록 상자와 함께 사용할 수 없습니다. WM_CHARTOITEM 메시지는 WM_CHAR 메시지를 받을 때 목록 상자에서 전송되지만 목록 상자가 이러한 모든 조건을 충족하는 경우에만 전송됩니다. . DRAWITEMStruct 구조의 항목작업 및 항목상태 멤버는 수행할 그리기 작업을 정의합니다. 키 입력에 대한 기본 작업을 수행할 목록 상자 항목의 인덱스를 지정하기 위해 추가 작업또는 음수가 아닌 경우 -1 또는 -2를 반환합니다. 기본 구현반환 – 1.

dwItemData는 항목과 연결할 값을 지정합니다. 단일 선택 목록 상자인 경우 현재 선택한 항목의 0기준 인덱스입니다. 현재 항목을 선택하지 않으면 LB_ERR입니다. 목록 상자는 항목 목록을 로드하는 데 사용됩니다. 사용자는 목록 상자를 사용하여 항목을 추가, 선택 및 삭제할 수 있습니다. 이 문서에는 명시적 라이선스가 첨부되어 있지 않지만 문서 텍스트 또는 다운로드 파일 자체에 사용 약관이 포함될 수 있습니다.

Comments are closed.