不好意思,小弟目前再用Qt寫一程式時,
因為XP系統的開啟檔案似乎沒辦法預設就是縮圖模式
如圖:
必須要從紅圈處改成縮圖才可以
所以必須要寫一個開檔功能應用在XP上 (老闆堅持用XP...)
目前已經做到可以在List上顯示該目錄下的所有檔案類型
如圖:
但對於縮圖的實做上有些問題想請教
目前置作縮圖的方法是將目錄上的所有檔案都過濾,
只顯示屬於圖檔的部分,接著去讀取每一張圖,然後呼叫函式縮小
最後再放到List上,但這樣有一個問題是每前進一個目錄
我的程式都會Delay直到該目錄下所有圖片都縮完並顯示為止
如果圖片有20張,我程式大概會有2~3秒不能動
本來想說用執行緒的方式去實作,還沒縮完的圖檔都用系統預設的Icon
縮完一張圖片在更新一個ListItem,像這個樣子
可是還沒去實作就又想到一個問題,就是當圖片過大時,
開檔並縮小的時間就越長,可是看了一下Win7的縮圖功能,卻都是神之快
不管我圖片在大,每當進入資料夾後,系統製作縮圖的速度真的超迅速
而且我程式在進行縮圖的過程中,程式記憶體會標很高,
甚至很容易出現"記憶體不足"的錯誤,
但看了一下系統管理員卻還有好幾G的記憶體可用,也滿莫名其妙的
所以又感覺自己的方向不對,想請教一下各位高手,
能否給小弟一點方向、建議或提示,該怎麼做才可以快速產生縮圖
還是說有辦法直接去讀取XP、win7系統中該圖片的thumbnail cache
或者XP有辦法調成預設開啟檔案就是縮圖模式ˇ_ˇ
謝謝各位