文件瀏覽器與DLL的創建

 今天終於將文件瀏覽器完成的差不多了,主要是利用圖片當按鈕去做,利用上一節寫的ListLaunch進行窗口的滑動,定義一個currentPath爲當前路徑,先默認爲NULL,在當前路徑下創建文件夾,如U盤文件夾,這裏並不添加到currentPath中,然後調用UpdateSavedFiles()函數來更新文件的目錄,建立一個FileList,當你點擊窗口上第N個圖片時,計算出相對的FileList的位置,通過FileList特有的getText函數,獲取到文字,即爲文件夾的文件名,獲取文件名,執行MoveSubFolder,把它添加到currentPath裏,再執行UpdateSavedFiles函數,就能顯示了。若返回上一層,則執行MoveParentFolder,執行UpdateSavedFiles。這時候需要根據文件的數量去存放圖片的位置,文字的顯示。

    圖片的滑動關鍵在於如何把圖片從一個位置移動到另一個位置,這個移動過程中頁面的刷新至爲重要,在這裏我創建了2個DC來做,Memdc內存DC是可以直接寫到顯示DC上的,而CurListDC是我創建的圖片DC,這個DC很大,若高度爲60,則CurListBmp = CreateCompatibleBitmap(DisDC, 660,60*count);將圖片和文字畫到CurListDC上,移動的時候將CurListDC拷貝到Memdc上,利用BitBlt函數實現,這樣就比較簡單,可以把一片的CurListDC拷貝到Memdc,注意要用空的DC去擦除Memdc。這裏還需要用指針代替數組去完成,有多少個文件,我就顯示多少張圖,在文件數量不是很多的時候可以實現這個功能,而且很流暢,但是一旦數量過大,這個CurListDC過大,顯示會比較慢。

最後完成了只顯示U盤文件裏的所有文件,系統本身的不顯示,功能很強大。

 

不足:未能實現文件的複製、剪切和粘貼功能。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章