最近買了本 python 3.0 回來研究,覺得 python 還不錯…
未來打算會專研這個語言,花了幾天寫了支小軟體,感覺還不錯實用,分享給大家
這支程式是「圖片批次轉檔」
功能就是~比如數位相機拍了照,檔案太大,想發佈到網路上,一次要大量轉檔時~
就會用到這支軟體嘍
ScreenShot:
Source:
http://sunnyriver.3wa.tw/uploads/upload/3wa_image_src.rar
Dist:
http://sunnyriver.3wa.tw/url.php?id=176
開發心得:
我是用 BOA Constructor 這個 IDE 來開發,感覺還滿好用的~
因為我很少寫UI,不太會用 Sizer ,一開始本來用 wxGlade 研究了一個晚上
就在好不容易畫面快組合結束,結果 crash... 進度一口氣從 95% 回到 40%
心痛之於 wxGlade 就進資源回收桶了
因為我設計GUI的概念還比較停留在以前寫 VB 時的經驗,所以我充份的利用
listbox 來處理列表,在迴圈跑的時候相對會慢很多。
然後就是 image 的技巧,使用找到範例最簡單的
Python Imaging Library (PIL)
最後按下開始轉檔時,本來我把迴圈(走listbox)那個,直接放到button去作
會造成迴圈走個幾張圖,整個程式就停住沒有回應,這部分困擾我好一段時間
以前在 java 還是 c 或是 gambas
java我記得我好像是用 thread.sleep
C++ Build 是用 (感謝好友老炳的提供)
Application->ProcessMessages();
gambas 則有 wait() 可以用
python 我找半天,一直找不到比較簡單又適合初學者的成功作法...
最後我找到一招,我把原來寫在 button event 的內容全拿出去,放到 mythread_GO
然後改用
thread.start_new_thread(self.mythread_GO,())
似乎就不會造成轉檔過程中,程式停掉的問題了^_^
如果大家用過有什麼建議,再煩請大家多多指教~~感激不盡
Author: 羽山秋人 (shadow@sunnyriver.3wa.tw)
Home Page: http://sunnyriver.3wa.tw
License: Free Software
Release Date: 2011-02-06
Build Requires:
python 2.6
wxPython 2.8
PIL 1.1.7
py2exe
Build Command Lite:
python setup.py py2exe