CFileDialog 자체에서 폴더명만 가져올 수 있는 방법은 없습니다.
다만 해당 Dialog를 OFN_EXPLORER 를 사용해서 Folder를 선택하는 File Dialog로 생성하게 되면
폴더를 선택할 수 있습니다.
하지만 이 예에서 파일의 경로를 읽어 와서 그 경로를 얻으려고 하는 것 같으니 이 같은 경우에는
다음과 같은 방법을 사용하면 됩니다.
CString strPathName;
CString strFileName;
char szFilter[] = "*.*||";
CFileDialog dlg(TRUE, NULL, NULL, OFN_HIDEREADONLY, szFilter);
if ( IDOK == dlg.DoModal() )
{
strPathName = dlg.GetPathName();
strFileName = dlg.GetFileName();
}
cout << strPathName << endl;
cout << strFileName << endl;
strPathName.TrimRight("\\" + strFileName);
cout << strPathName << endl;
CString의 Trim 함수를 사용하면 쉽게 구현할 수 있죠.
========================
이렇게 쓰셔도 될거 같네요
CFileDialog 다이얼로그 명(TRUE,NULL,NULL,OFN_OVERWRITEPROMPT,"Excel Files (*.xls)|*.xls");
다이얼로그 명.m_ofn.lpstrInitialDir = "Open할 초기 폴더";
ex)
CFileDialog ReportDlg(TRUE,NULL,NULL,OFN_OVERWRITEPROMPT,"Text Files (*.txt)|*.txt");
ReportDlg.m_ofn.lpstrInitialDir = "c:\\abc";
네이버 지식인
http://kin.naver.com/qna/detail.nhn?d1id=1&dirId=1040101&docId=71491996&qb=Q0ZpbGVEaWFsb2c=&enc=utf8§ion=kin&rank=2&sort=0&spq=0&pid=fIARSv331xCssbjB6Fsssv--010671&sid=S6iUVJ6DqEsAAGajCU0
'프로그래밍 > 공부관련' 카테고리의 다른 글
GLUT_윈도우의 초기화와 생성 (0) | 2010.04.21 |
---|---|
오일러 각 (0) | 2010.04.16 |
[D3D] CreateTexture (0) | 2010.03.22 |
[D3D] Texture Splatting 텍스쳐 스플래팅 (0) | 2010.03.22 |
CString -> char * (0) | 2010.03.21 |