弹出选择文件夹的对话框 BROWSEINFO 的用法【MFC】
生活随笔
收集整理的這篇文章主要介紹了
弹出选择文件夹的对话框 BROWSEINFO 的用法【MFC】
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
以下是在vs2008中編譯通過的代碼,代碼注釋詳細。要實現的功能是點擊“瀏覽”按鈕,即彈出選擇文件夾的對話框。并將選擇的文件夾或文件路徑顯示在MessageBox中。
void CMFC_TrojanKillerDlg::OnBnClickedButton1() {// TODO: 在此添加控件通知處理程序代碼BROWSEINFO bi; //BROWSEINFO結構有很多成員參數可以自己設置ZeroMemory(&bi,sizeof(BROWSEINFO)); //將以&bi為起始地址,大小為sizeof(BROWSEINFO)的內存區域用0填充//bi.ulFlags=BIF_BROWSEINCLUDEFILES; //設置彈出的對話框屬性。此處意思為包含文件。如果不設這個值,默認的是只有文件夾。ulFlags還可以定義很多別的屬性//bi.ulFlags=BIF_NEWDIALOGSTYLE; //窗口可以調整大小,有新建文件夾按鈕//bi.lpszTitle=L"指定要處理的文件夾"; //在窗口內顯示提示用戶的語句LPITEMIDLIST pidl = SHBrowseForFolder(&bi); //Displays a dialog box enabling the user to select a Shell folder.TCHAR * path = new TCHAR[MAX_PATH];if(pidl != NULL){SHGetPathFromIDList(pidl,path); //Converts an item identifier list to a file system pathMessageBox(path);} }顯示文件夾窗口默認顯示效果:加上語句bi.ulFlags=BIF_BROWSEINCLUDEFILES;后不僅可以顯示文件夾,還可以顯示文件:
加上語句bi.ulFlags=BIF_NEWDIALOGSTYLE;后窗口可以調整大小,并有新建文件夾按鈕:
加上語句bi.lpszTitle=L"指定要處理的文件夾"; 后在窗口內顯示提示用戶的語句:
隨意選擇一個文件,彈出MessageBox顯示文件全路徑:
總結
以上是生活随笔為你收集整理的弹出选择文件夹的对话框 BROWSEINFO 的用法【MFC】的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: PHP连接MySQL数据库的几种方法
- 下一篇: 安装版win7安装时分区