파일 열기 다이얼로그를 테스트 해보았다. (mfc)
관련 자료는 인터넷 참고를 해보았다.
1.다이얼로그 구성 (Button1 클릭 시 파일열기 다이얼로그 나오게)
2.소스 수정
TCHAR szFilters[] = _T(" 1. JPG|*.jpg| 2. PNG|*.png| 3. All Files|*.*|");
CFileDialog dlg(TRUE, NULL,NULL,OFN_EXPLORER, szFilters);
if (IDOK == dlg.DoModal()) {
CString strPathName = dlg.GetPathName();
m_ctrl_Edit1.SetWindowTextW(strPathName);
}
- CFileDialog 클래스 변수의 인자로 전달되는 항목들에 대한 설명들은 아래에 정리되어있음.
CFileDialog::CFileDialog
explicit CFileDialog( BOOL bOpenFileDialog,
LPCTSTR lpszDefExt = NULL,
LPCTSTR lpszFileName = NULL,
DWORD dwFlags = OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,
LPCTSTR lpszFilter = NULL,
CWnd* pParentWnd = NULL,
DWORD dwSize = 0,
BOOL bVistaStyle = TRUE );
BOOL bOpenFileDialog
생성하는 다이얼로그 박스 타입을 지정해 주는 매개변수
TRUE => 파일열기 다이얼로그 박스
FALSE => 파일 저장 다이얼로그 박스
LPCTSTR lpszDefExt
기본 파일 확장자명(저장할 경우 사용)
만약 유저가 파일이름 상자 안에 확장자를 포함하지 않는 경우
lpszDefExt의 파일 확장자명을 자동으로 지정 함
NULL => 확장자명을 추가하지 않음
lpszFileName
시작할 때 파일이름 상자에 나타낼 이름 지정
NULL => 시작할 때 파일이름을 나타내지 않음
dwFlags
하나이상의 플래그를 사용하여 사용자가 원하는 다이얼로그 박스로 조합
많이 사용되는 플래그
OFN_ALLOWMULTISELECT 한번에 여러개의 파일들을 선택 가능하게 함
OFN_CREATEPROMPT 존재하지 않는 파일명을 입력했을 경우 새로 생성하겠냐는 대화상자 표시
OFN_EXPLOPER 열기나 저장하기를 윈도우 탐색기 스타일로 출력
OFN_FILEMUSTEXIST 기존에 존재하는 파일 이름만 입력할 수 있도록 함
OFN_HIDEREADONLY 읽기전용 파일은 출력하지 않음
OFN_LONGNAMES 긴 파일 이름을 사용할 수 있도록 함
OFN_OVERWRITEPROMPT 저장할려고 하는 파일명이 존재할 경우 덮어쓰겠냐는 대화 상자 표시
OFN_PATHMUSTEXIST 오직 유효한 경로나 파일명만을 입력(아님 경고 메세지 출력)
추가 플래그 참조 : http://msdn.microsoft.com/ko-kr/library/ms646839(en-us,VS.85).aspx
lpszFilter
사용할 파일들이 걸러지도록 파일명들을 연속으로 나열 함
pParentWnd
부모나 소유자 윈도우의 파일 다이얼로그 박스의 포인터
dwSize
OPENFILENAME 구조체의 크기
출처: http://pkss.tistory.com/entry/MFC-CFileDialog-파일선택-다이얼로그 [pkss]
'사이드 프로젝트 > 나만의 사진 관리 프로그램 📷' 카테고리의 다른 글
Jpg2Raw - (5) Manual (0) | 2021.04.16 |
---|---|
Jpg2Raw - (4) Get File Path (0) | 2021.04.16 |
Jpg2Raw - (3) Find Files (0) | 2021.04.16 |
Jpg2Raw - (1) Concept (0) | 2021.04.16 |
최근댓글