小弟做了一个基于对话框的阅读器,用的是自己做的浮动工具条,所以一些原来MFC自动生成的功能要自己写,问一下“另存为”那个功能该怎么做?

解决方案 »

  1.   

    CFileDialog就行吧?第一個參數設成false就是另存,true就是打開不知道你問的是不是這個?
      

  2.   

    CString CCsDlg::FileSave()
    {
    OPENFILENAME ofn ;
    TCHAR  szFullName[_MAX_PATH];
    ::ZeroMemory (&ofn, sizeof(OPENFILENAME)) ;
    szFullName[0] = TEXT('\0') ;
    ofn.lStructSize       = sizeof (OPENFILENAME) ;
        ofn.hwndOwner         = m_hWnd;
        ofn.hInstance         = NULL ;
        ofn.lpstrFilter       = "exe 文件\0;*.EXE\0";
        ofn.lpstrCustomFilter = NULL ;
        ofn.nMaxCustFilter    = 0 ;
        ofn.nFilterIndex      = 0 ;
        ofn.nMaxFile          = MAX_PATH ;
        ofn.nMaxFileTitle     = MAX_PATH ;
        ofn.lpstrInitialDir   = "c:\\" ;
        ofn.lpstrTitle        = "保存到";
    ofn.lpstrFile   = szFullName ;
        ofn.nFileExtension    = 0 ;
        ofn.lpstrDefExt       = TEXT("exe") ;
        ofn.lCustData         = 0 ;
        ofn.lpfnHook          = NULL ;
        ofn.lpTemplateName    = NULL ;
        ofn.Flags             = OFN_ENABLESIZING | OFN_OVERWRITEPROMPT ;

    if(!GetOpenFileName(&ofn))
    return "";
    else
    return    ofn.lpstrFile;
    }
      

  3.   

    CFileDialog cSaveDlg(FALSE, ...);
    cSaveDlg.DoModal(); // 显示另存为对话框
      

  4.   

    楼主你的意思是不是要把你写好的文字另存为别的文件呢
    那你只要用CFileDialog
    把第一个参数BOOL bOpenFileDialog设成为false就行了试试吧
    ................................
    ............................
    ........................
    ....................
    ................
    ............
    ........
    ....
    .
      

  5.   

    我做的阅读器类似Acrobat,也是读入txt文件后显示在位图上,暂时还不支持修改,所以只要能把原来那个文本文件另存为另一个文件名的就可以了
      

  6.   

    你要做的工作:首先利用ClassWizard建立函数OnFileSaveAs();
                 然后在实现的函数体中加入:
                 CFileDialog fdlg(false);   //文件存取对话框
                 fdlg.DoModal();          //显示对话框
                 输入你的文件名,MFC自动为你完成
                 如果要显示在Edit Box中,你需要把文件内容读出到Edit Box的变量中,再UpdateData(false);就可以了!
      

  7.   

    楼上的,我要的不是一个save as对话框啊,是要可以真正保存的,而不只是一个对话框
      

  8.   

    先用CFileDialog弹出对话框得到文件名(GetPathName),然后把你现在编辑并保存好的文件拷贝:
    CopyFile