필터

이 섹션의 정보 탐색기 스타일 및 기존 스타일 열기다른 이름으로 저장 대화 상자에 적용 됩니다.

제한 대화 상자를 표시 하는 파일에서 사용자를 돕기 위해 파일 이름 필터를 제공할 수 있습니다. 파일 이름 필터 null 종료 문자열, 설명 및 하나를 다른 연결 패턴의 쌍으로 구성 됩니다. 대화 상자는 필터를 사용 하 고;를 선택 하는 사용자에 게 설명을 표시합니다 무늬를 사용 하 여 표시할 파일을 선택 하 고.

필터를 지정 하려면 필터 문자열 쌍의 배열이 포함 된 버퍼를 가리키도록 OPENFILENAME 구조의 lpstrFilter 멤버를 설정 합니다. 배열에 있는 마지막 문자열 추가 null 문자로 따라야 합니다.

패턴 문자열에는 유효한 파일 이름 문자로 별표 (*)의 조합이 될 수 있습니다. 별표는 모든 유효한 파일 이름 문자 조합을 나타내는 와일드 카드입니다. 대화 상자에 패턴 일치 하는 파일에만 표시 됩니다. 같은 설명에 대 한 여러 패턴을 지정 하려면 패턴을 구분 하려면 세미콜론 (;)을 사용 해야 합니다. 공백 문자를 패턴 문자열에 예기치 않은 결과가 발생할 수 있습니다 참고.

다음 코드 조각에는 두 개의 필터를 지정합니다. "소스" 설명과 함께 필터는 두 가지 패턴을 갖는다. 이 필터를 선택 하는 경우 대화 상자는 파일을 표시 합니다.C와.CXX 확장.

OPENFILENAME ofn;       / / 일반 대화 상자 구조

ofn.lpstrFilter = "Source\0 *.C; *.CXX\0All\0*.*\0 "
ofn.nFilterIndex = 1 

OPENFILENAME 구조체의 nFilterIndex 멤버 대화 상자를 처음 사용 하는 필터를 나타내는 인덱스를 지정 합니다. 버퍼의 첫 번째 필터는 인덱스 1, 두 번째 2 등. NFilterIndex 멤버 대화 상자를 사용 하는 동안 필터에서 선택한 필터의 인덱스를 설정 하는 사용자 변경 내용을 반환 하는 경우.

단일 필터를 포함 하는 버퍼의 주소를 lpstrCustomFilter 멤버를 설정 하 고 문자 또는 바이트 버퍼 크기를 nMaxCustFilter 멤버를 설정 하 여 사용자 지정 필터를 만들 수 있습니다. 대화 상자가 항상 사용자 정의 필터를 필터 목록 맨 앞에 배치 고 반환, 항상 업데이트 필터 패턴 부분에서 사용자가 선택한 필터 패턴.

탐색기 스타일 대화 상자에 대 한 사용자가 다른 필터를 선택 하는 경우 기본 확장명 변경 될 수 있습니다. 누구의 첫 번째 패턴은 폼의 필터를 선택할 경우 *.xxx (즉, 확장명이 포함 되지 않습니다 와일드 카드 문자), 대화 상자 기본 확장명으로 xxx 를 사용 합니다. OPENFILENAME 구조체의 lpstrDefExt 멤버에 기본 확장명을 지정 하는 경우에 발생 합니다. 예를 들어, 사용자가 선택 합니다 "Source\0 *.C; *.CXX\0 ""C"로 필터를 기본 확장명 변경. 그러나, 경우에로 "Source\0 * 필터 정의 했다.C * \ 0 ", 때문에 와일드 카드를 포함 하는 확장 기본 확장명이 변하지 않을 것 이라고.

 

Index