请教用CFILEDIALOG打开文件时,如何设置才能时此对话框打开的文件夹是上次打开的文件夹(或打开的文件夹可随便指定).先谢了!

解决方案 »

  1.   

    定义了两个CString类型的字符串m_szFilePath和m_szFileName来保存路径
    m_szFileName.Empty(); CFileDialog dlg(TRUE,"bmp",NULL,
    OFN_HIDEREADONLY|OFN_OVERWRITEPROMPT,
    "All files (*.*)|*.*||");
    dlg.m_ofn.lpstrInitialDir=m_szFilePath;
    if (dlg.DoModal() == IDOK)
    {
    m_szFileName = dlg.GetFileName();
    m_szFilePath = dlg.GetPathName().Left(dlg.GetPathName().Find(m_szFileName));
    Invalidate(FALSE);
    return;
    }
      

  2.   

    这段代码放到OnOpenFile里边
    其实完全可以只用m_szFilePath,不过我想m_szFileName在你后面的程序应该有用吧。
      

  3.   

    晕,这段代码是从我程序上直接拷贝的,也没有检查一下~~对不起了,CFileDialog的构造函数的第二个参数改为NULL吧,或者修改为你需要的缺省后缀名