天天看點

vs2010 MFC打開檔案對話框問題

// TODO: 添加位圖打開操作
	CString ImagePathName;
	CFileDialog dlg(TRUE,"bmp",".bmp",OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,"Bitmap(*.BMP)|*.BMP||");//設定檔案對話框類對象變量
	HBITMAP m_hImage;//設定圖像檔案類對象變量
	if (dlg.DoModal()!=IDOK)return;//如果對話框類選擇了檔案
	ImagePathName=dlg.GetPathName();
	//擷取圖像資料句柄
	m_hImage=(HBITMAP)LoadImage(AfxGetInstanceHandle(),dlg.GetPathName(),IMAGE_BITMAP,0,0,LR_LOADFROMFILE|LR_CREATEDIBSECTION);
	GetDlgItem(IDC_STATIC_IMAGE)->SendMessage(STM_SETIMAGE,IMAGE_BITMAP,(LPARAM)m_hImage);//IDC_STATIC_IMAGE為第一個添加的圖像框
           

編譯出現 :

 error C2664: “CFileDialog::CFileDialog(BOOL,LPCTSTR,LPCTSTR,DWORD,LPCTSTR,CWnd *,DWORD,BOOL)”: 不能将參數 2 從“const char [4]”轉換為“LPCTSTR”與指向的類型無關;轉換要求 reinterpret_cast、C 樣式轉換或函數樣式轉換

解決辦法:打開菜單欄->“項目"->項目屬性”->更改預設字元為“使用多位元組字元集”。

vs2010 MFC打開檔案對話框問題

繼續閱讀