• <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實現打開文件對話框和利用MFC來實現打開文件對話框。

            方法一: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"); //定義三個選項,alltextexe

            //    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實現

            //    CFileDialog dlg(TRUE, NULL, NULL,

            //           OFN_HIDEREADONLY | OFN_OVERWRITEPROMPT,

            //           NULL);

            //

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

            //    {

            //           szFilename = dlg.GetPathName();

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

            //    }

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

            下面的這種方式是打開文件夾MFC實現。

                   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
            国产精品久久久久久福利69堂| 亚洲国产精品高清久久久| 久久亚洲精品成人av无码网站| 日韩中文久久| 日韩久久久久中文字幕人妻| 狠狠精品干练久久久无码中文字幕| 97久久超碰国产精品旧版| 精品国产一区二区三区久久久狼 | 久久精品成人| 久久久久国产一级毛片高清板| 国产精品成人久久久久久久| 久久国产热这里只有精品| 欧美激情精品久久久久久久九九九| 国产精品午夜久久| 久久久久99这里有精品10 | 精品久久久久香蕉网| 久久久久久久久无码精品亚洲日韩| 欧美黑人又粗又大久久久| 成人免费网站久久久| 久久国产三级无码一区二区 | 亚洲欧美成人久久综合中文网| 亚洲国产成人久久综合区| 国内精品久久久久影院薰衣草| 久久久一本精品99久久精品88| 成人免费网站久久久| 久久婷婷午色综合夜啪| 国内精品人妻无码久久久影院| 99久久精品国产高清一区二区 | 亚洲国产日韩欧美久久| 狠狠色狠狠色综合久久| 色综合久久天天综合| 亚洲中文字幕无码久久综合网| 精品国产乱码久久久久久1区2区 | 久久天天躁狠狠躁夜夜av浪潮| 欧美久久久久久| 久久综合中文字幕| 日产精品久久久久久久| 曰曰摸天天摸人人看久久久| 国产精品丝袜久久久久久不卡| 日本精品久久久中文字幕| 久久天天躁夜夜躁狠狠躁2022|