• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            隨筆-145  評論-173  文章-70  trackbacks-0

            一、利用API實現(xiàn)打開文件對話框和利用MFC來實現(xiàn)打開文件對話框。

            方法一:API部分:

            //    OPENFILENAME ofn;

            //    char szFile[MAX_PATH];

            //    ZeroMemory(&ofn,sizeof(ofn));

            //    ofn.lStructSize = sizeof(ofn);

            //    ofn.lpstrFile = szFile;

            //    ofn.lpstrFile[0] = TEXT('\0');

            //    ofn.nMaxFile = sizeof(szFile);

            //    ofn.lpstrFilter = TEXT("all\0*.*\0jpg\0*.jpg\0bmp\0*.bmp\0"); //定義三個選項,all,textexe

            //    ofn.nFilterIndex = 1;      //定義首選項是哪一個

            //    ofn.lpstrFileTitle = NULL;

            //    ofn.nMaxFileTitle = 0;

            //    ofn.lpstrInitialDir = NULL;

            //    ofn.Flags = OFN_EXPLORER |OFN_PATHMUSTEXIST | OFN_FILEMUSTEXIST;

            //    if(GetOpenFileName(&ofn))

            //    {

            //           ::SetDlgItemText(this->m_hWnd,IDC_EDIT1,szFile);

            //    } 

            方法二、MFC實現(xiàn)

            //    CFileDialog dlg(TRUE, NULL, NULL,

            //           OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,

            //           NULL);

            //

            //    if(dlg.DoModal() == IDOK)

            //    {

            //           szFilename = dlg.GetPathName();

            //           ::MessageBox(NULL,szFilename,NULL,MB_OK);

            //    }

            注意:打開文件的方式和打開文件夾的方式是不同的。打開文件的方式是不斷的打開直到出現(xiàn)末端為文件,否則遇到文件夾還要繼續(xù)打開。而打開文件夾則是只要選擇到一個路徑的文件夾就打開。

            下面的這種方式是打開文件夾MFC實現(xiàn)。

                   static TCHAR strDirName[MAX_PATH];

             

                   BROWSEINFO bi;

                   CString szString = TEXT("選擇一個源文件子文件夾");

                   bi.hwndOwner = ::GetFocus();

                   bi.pidlRoot = NULL;

                bi.pszDisplayName = strDirName;

                   bi.lpszTitle = szString;

                bi.ulFlags = BIF_BROWSEFORCOMPUTER | BIF_DONTGOBELOWDOMAIN | BIF_RETURNONLYFSDIRS;

                bi.lpfn = NULL;

                   bi.lParam = 0;

                   bi.iImage = 0;

             

                   LPITEMIDLIST pItemIDList = ::SHBrowseForFolder(&bi);

                   if(pItemIDList == NULL)

                   {

                          return ;

                   }

             

                   ::SHGetPathFromIDList(pItemIDList, strDirName);

             

                   CString str = strDirName;

                   if(str != "" && str.Right(1) != '\\')

                          str += '\\';

                   ::SetDlgItemText(this->m_hWnd,IDC_EDIT1,str);

             

             

            posted on 2009-12-12 16:51 deercoder 閱讀(5544) 評論(0)  編輯 收藏 引用 所屬分類: MFC
            久久免费国产精品一区二区| 亚洲精品国产成人99久久| 伊人久久大香线蕉av不卡| 99久久免费国产精品特黄| 久久久久久久97| 国产无套内射久久久国产| 久久国产免费直播| 91久久精品无码一区二区毛片| 国产精品成人无码久久久久久| 一本一道久久a久久精品综合| 99久久99这里只有免费的精品| 青青草国产97免久久费观看| 久久天天躁狠狠躁夜夜躁2O2O| 激情综合色综合久久综合| 99久久国产热无码精品免费| 久久影院久久香蕉国产线看观看| 99久久无色码中文字幕| 人妻丰满AV无码久久不卡| 久久精品国产亚洲AV蜜臀色欲 | 久久精品国产精品亚洲| 99热热久久这里只有精品68| 久久99热狠狠色精品一区| MM131亚洲国产美女久久| 国产成人久久精品激情| 91视频国产91久久久| 欧美精品一本久久男人的天堂 | 精品久久久久成人码免费动漫| 97精品依人久久久大香线蕉97 | 色综合久久综精品| 国内精品久久久久久99蜜桃| 免费国产99久久久香蕉| 久久国产精品-久久精品| 亚洲国产成人精品久久久国产成人一区二区三区综| 婷婷久久综合| 国产成人精品综合久久久久| 久久狠狠一本精品综合网| 国产精品99久久久久久董美香| 色偷偷偷久久伊人大杳蕉| 一本色道久久综合亚洲精品| 怡红院日本一道日本久久| 97超级碰碰碰碰久久久久|