CFileDialog dlg(true, NULL, NULL, OFN_OVERWRITEPROMPT, "bmp(*.bmp)|*.bmp||", NULL);
CFileDialog::CFileDialog
CFileDialog(BOOL bOpenFileDialog,
LPCTSTR lpszDefExt = NULL,
LPCTSTR lpszFileName = NULL,
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
LPCTSTR lpszFilter = NULL,
CWnd* pParentWnd = NULL
); >매개변수: bOpenFileDialg TRUE이면 파일 열기 대화 상자를 생성하고, FALSE이면 파일 다른 이름으로 저장(다른 이름으로 저장) 대화 상자를 생성합니다.
lpszDefExt는 기본 파일 확장자입니다. 사용자가 파일 이름 편집 상자에 확장자를 포함하지 않으면 lpszDefExt에서 정의한 확장자가 파일 이름 끝에 자동으로 추가됩니다. NULL인 경우 확장자가 추가되지 않습니다.
lpszFileName은 파일 이름 편집 상자에 처음 표시되는 파일 이름입니다. NULL인 경우 초기 파일 이름이 표시되지 않습니다.
dwFlags 대화 상자를 사용자 정의할 수 있는 하나 이상의 플래그 조합입니다. 이러한 플래그에 대한 설명은 온라인 설명서 "Win32 SDK"의 OPENFILENAME 구조를 참조하세요. m_ofn.Flags 구조 멤버를 변경하는 경우 변경 내에서 OR 연산을 사용하여 기본 동작을 그대로 유지합니다.
lpszFilter 파일에 적용할 수 있는 필터를 지정하는 문자열 쌍 목록입니다. 필터를 지정하면 선택한 파일만 파일 목록 상자에 표시됩니다. 필터 사용 방법을 알아보려면 지침 섹션을 참조하세요.
pParentWnd는 파일 대화 상자 개체의 상위 창 또는 소유자 창을 가리킵니다.
설명:
bOpenFileDialog 값에 따라 표준 Windows 파일 대화 상자 개체를 생성하거나 열기 대화 상자 또는 저장 대화 상자를 생성하려면 이 멤버 함수를 호출합니다.
OFN_ALLOWMULTISELECT 플래그. m_ofn.lpstrFile을 할당된 버퍼 포인터로 대체하여 여러 파일 이름의 반환된 목록을 보관할 파일 이름 버퍼를 제공해야 합니다. CFileDialog를 만든 후 DoModal을 호출하기 전에 이 작업을 수행합니다. 또한 m_ofn.nMaxFile은 m_ofn.lpstrFile이 가리키는 버퍼의 바이트 수로 설정되어야 합니다.
사용자가 마우스나 키보드를 사용하여 탐색기 스타일 대화 상자의 크기를 변경할 수 있도록 하려면 OFN_ENABLESIZING 플래그를 설정하세요. 이는 후크 프로세스나 사용자 정의 템플릿을 제공하는 경우에만 필요합니다. 이 플래그는 탐색기 스타일 대화 상자에서만 작동하며 이전 스타일 대화 상자는 크기를 조정할 수 없습니다.
lpszFilter 매개변수는 파일 이름 유형과 파일 목록 상자에 표시할 수 있는 파일을 결정하는 데 사용됩니다. 이중 문자열의 첫 번째 문자열은 필터를 설명하고 두 번째 문자열은 사용된 파일 확장자를 나타냅니다. ";"을 사용하여 여러 확장자를 지정할 수 있습니다. 문자열은 두 개의 "|" 문자로 끝나고 그 뒤에 NULL이 옵니다.
CString 개체를 매개 변수로 사용할 수도 있습니다.
예를 들어 Mirosoft Excel을 사용하면 확장자가 .XLC(테이블) 또는 .XLS(워크시트)인 파일을 열 수 있습니다. Excel 필터는 다음과 같아야 합니다.
static char BASED_CODE szFilter [] =
"차트 파일(*.xlc)|*.xlc|워크시트 파일(*.xls)|*.xls|데이터 파일(*.xlc; *.xls)|*.xlc ; * .xls|모든 파일(*.*)|*.*||";