MFC CFileDialog 檔案過濾條件

2021-09-28 22:56:54 字數 663 閱讀 6281

今天寫乙個選擇檔案的對話方塊,使用cfiledialog:

tchar *lpfilter = _t("img files(*.img) | *.img |all files(*.*) | *.* ||");

cfiledialog dlg(true, null, null, ofn_hidereadonly | ofn_overwriteprompt, lpfilter, this);

if (idok == dlg.domodal())

當對話方塊顯示出來時候,並沒有任何符合過濾條件的檔案顯示,即使選all files(*.*) 也沒有任何檔案。

後來拿msdn上對比,最後發現是過濾條件(lpfilter),字串中的空格所致。

型別篩選(*.img, 不是型別說明(img files(*.img)))和其後的"|"符號中間不能有空格,否則型別篩選就會失效。最後的"*.*"和結束符"||"中間也不能有空格。即 將 tchar *lpfilter = _t("img files(*.img) | *.img |all files(*.*) | *.* ||"); 改為 tchar *lpfilter = _t("img files(*.img) | *.img| all files(*.*) | *.*||"); 就可以了。

找了好久,真是個坑...

MFC CFileDialog 相對路徑

1 在mfc中想按照自己設定的路徑來開啟filedialog,其實cfiledialog有自己的變數 m ofn,該變數為openfilename的結構體,使用者可自己定義一些內容 例如 開啟窗體的名字 dlg.m ofn.lpstrtitle t 遙測載入 按照自己設定的路徑開啟dlg dlg.m...

NSSpeechSynthesizer 文字變語音

nsspeechsynthesizer 是 foundation中的乙個類,這個類可以方便的在cocoa應用程式中新增 文字到語言 功能。開發者可以使用這個類向ios 引用程式中新增類似功能。效果圖如下 截圖 speechutterance引數說明 utterance.voice 語系 不區分大小寫...

FileSystemWatcher判斷檔案複製完成

使用 filesystemwatcher 監視指定目錄中的更改。可監視指定目錄中的檔案或子目錄的更改。該元件可以監視本地計算機 網路驅動器或遠端計算機上的檔案。可監視目錄或檔案中的若干種更改。例如,可監視檔案或目錄的 attributes lastwrite 日期和時間或 size 方面的更改。通過...