关闭

改变MFC中MDI默认打开方式(ID_FILE_OPEN)

标签: mfcfilecommandpath
1395人阅读 评论(0) 收藏 举报
分类:

在App类的CxxxApp::OnFileOpen()方法里不要调用CWinApp::OnFileOpen,而是调用自己的文件选择框取得文件路径,然后调用CWinApp::OpenDocumentFile打开文件。

如下:


void CMyPrjEditDemoApp::OnFileOpen() 
{
 // TODO: Add your command handler code here

 //下面是自己添加的文件打开对话框
 CFileDialog dlg(TRUE);
 int structsize = 0;

 DWORD dwVersion,dwWindowsMajorVersion,dwWindowsMinorVersion;

 dwVersion = GetVersion();
 dwWindowsMajorVersion = (DWORD)(LOBYTE(LOWORD(dwVersion)));
 dwWindowsMinorVersion = (DWORD)(HIBYTE(LOWORD(dwVersion)));

 if(dwVersion<0x80000000)
  structsize=88;
 else
  structsize=76;


 //
 GISENV* env = _GetEnv();
  
 dlg.m_ofn.lpstrInitialDir = env->cur;
 dlg.m_ofn.lStructSize = structsize;
 dlg.m_ofn.lpstrFilter = "工程文件(*.mpj)\0*.mpj\0所有文件(*.*)\0*.*\0\0";

 if(IDOK == dlg.DoModal())
 {
  CString path = dlg.GetPathName();

  //调用CWinApp::OpenDocumentFile(),将路径传递进去
  CWinApp::OpenDocumentFile(path.GetBuffer(path.GetLength())); 
 }
 
}



转帖:http://wwboss.blog.sohu.com/88957540.html

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:887158次
    • 积分:12573
    • 等级:
    • 排名:第1176名
    • 原创:28篇
    • 转载:873篇
    • 译文:1篇
    • 评论:90条
    最新评论