1、 既然要求支持批量處理,那么一次就應(yīng)該允許選擇多個(gè)文件,在上一節(jié)的最后已經(jīng)說明了一次選擇多個(gè)文件,OpenFileDialog在返回的時(shí)候通過FileNames得到的是一個(gè)數(shù)組,所以要進(jìn)行簡(jiǎn)單的轉(zhuǎn)換成用分號(hào)(;)分隔的字符串,以便填入文本框中。同時(shí),為了方便處理過程中的遍歷,使用了Queue保存已經(jīng)選擇的圖片文件,這樣每次取出來(lái)個(gè)文件來(lái)處理就行了,直到Queue中不再有元素。
2、 在處理過程中,有一個(gè)動(dòng)畫處理每一張要處理的圖片,這張圖片初始的時(shí)候是鋪滿整個(gè)窗體,并且是完全透明,然后隨著動(dòng)畫的進(jìn)行,透明度逐漸增加到1,并且伴隨著其他效果。
3、 點(diǎn)擊啟動(dòng)后,先檢查必要的參數(shù)及選項(xiàng)輸入,把選中的文件一個(gè)一個(gè)保存的Queue中。接著就是開始啟動(dòng)動(dòng)畫了。
4、 動(dòng)畫執(zhí)行完成后,進(jìn)行圖片切割,然后把把切割后的縮略圖加載到窗體下方的列表中。為了顯示效果,在圖片列表中縮略圖上做了一些效果,鼠標(biāo)移上/移出,點(diǎn)擊等。
5、要注意一點(diǎn),當(dāng)鼠標(biāo)離開縮略圖列表區(qū)域時(shí),還得把窗體背景重新設(shè)置為默認(rèn)圖片。
6、 一圖片處理完成后,緊接著檢查Queue中是否還有元素,如果有則繼續(xù)執(zhí)行動(dòng)畫,如此循環(huán)4和5兩步,否則退出此次執(zhí)行命令。
7、另外一點(diǎn),使用的那個(gè)進(jìn)度條是自定義的用戶控件,其實(shí)是一個(gè)簡(jiǎn)單組合,就是在一個(gè)ProgressBar上放一個(gè)TextBlock即可,這樣方便控制,既展示了進(jìn)度,也顯示了提示信息。
- PC官方版
- 安卓官方手機(jī)版
- IOS官方手機(jī)版