網頁

搜尋此網誌

2014年5月19日 星期一

wxPython 跨平台視窗程式庫

wxPython 是一套 Python 的 GUI 工具 (toolkit),可以讓我們簡單快速地建立圖形化的使用者介面 (Graphical User Interface, GUI),wxPython 實際上是將另一套 wxWidgets 程式庫包成 Python 可以使用的套件。由於 wxWidgets 本身是一跨平台 (cross-platform) 的程式庫,因此利用 wxPython 開發的應用程式也是可以跨平台的,加上 wxWidgets 是呼叫系統原生的 API,其運行速度是相當快速。wx 的 w 指的是 Microsoft Windows,而 x 指的則是 X Window系統。

wxPython 在 Ubuntu 上的運作是這樣:wxPython → wxWidgets → GTK+ 。若是在 Windows 上則是:wxPython → wxWidgets → Windows API 。大部分的事情已經在 wxWidgets 做掉了,wxPython 是 Python 和 wxWidgets 之間的橋樑

了解 wxPython 的運作原理,我們可以試著裝起來用用看,在 Ubuntu 上安裝 wxPython 相當簡單,請執行下列指令:
sudo apt-get install python-wxgtk2.8
sudo apt-get install python-wxtools wx2.8-i18n

學習 wxPython 實際上就是學習 wxWidgets ,我們用 Python 去呼叫 wxWidgets 提供的功能。在 wxPython 之中的視窗稱之為「Frame」,而不是「Window」,這點需要特別留意,觀念上很容易混淆,所有的視窗都是繼承 Frame 類別。wxPython  提供相當多的工具項 (Widgets) 類別,學習時建議先認識有哪些控制項 (Controls) ,屬於 Control 的子類別,例如常用的按鈕 (button)、文字方塊 (text box)等。

至於新手入門的話,可以先看這篇 Getting started with wxPython ,若需要進一步的 API 說明,則可以閱下列連結的內容:
整體來說,利用 wxPython 開發應用程式具有跨平台的優點,加上以 Python 語言進行撰寫,使得我們可以簡單又快速地建立視窗應用程式。然而 wxPython 缺乏一個好用的 IDE 開發工具,像是 Visual Studio 可以用拖拉方式建立應用程式,稍微讓 wxPython 的開發顯得不甚完善。如果想用圖形化方式建立 wxPython 應用程式,則是可以參考 wxDesignerwxFormBuilder 這兩項快速開發工具。

###

沒有留言:

張貼留言

熱門文章