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 應用程式,則是可以參考 wxDesigner 和 wxFormBuilder 這兩項快速開發工具。
###
搜尋此網誌
2014年5月19日 星期一
訂閱:
張貼留言 (Atom)
熱門文章
-
即時串流通信協定 ( Real Time Streaming Protocol , RTSP) 是應用層的通訊協定,定義在 RFC 2326 規範中,RTSP 是用來控制具有即時與同步特性的資料,如音訊和視訊的媒體,資料來源包含現場即時轉播和儲存的片段剪輯,媒體資料與控制資料是...
-
對於想接觸 電力電子 (Power Electronics) 這個領域的學生來說,會有不知道該如何著手的問題,我也遇過,總希望有人可以跟你講,這篇文章提供給大家參考,電力電子領域當中有幾本極為重要的 經典著作 (Classic) ,很多學校都是用這些書籍當作教科書,問題是如果...
-
形態學影像處理 (Morphological Image Processing),依據 Gonzalez與Woods的書本上說明\:影像處理的形態學是依據 數學形態學 ( Mathematical Morphology , MM)的應用之一,並且是以數學理論為運算的基礎(集合理論...
-
One picture is worth more than ten thousand words. (A picture is worth a thousand words.) 今天介紹 數位影像處理(Digital Image Processing) 的聖經,這本書是在...
-
今天跟大家介紹的不是什麼專業技術,而是健康知識!Why?因為 疱疹(Herpes) 這種疾病可能是工程師會得到的常見疾病,而且沒有藥可以治癒,唯一的解藥是你自己的免疫與抵抗力。病發原因主要是:熬夜、疲勞、壓力大、睡眠不足、抵抗力差時才會發生疱疹。(這不是現在RD的情形嗎...)...
-
談談 元件物件模型 ( Component Object Model, COM) 這個主題吧!前一陣子都在研究 DirectShow,常常看到 COM 這個關鍵字。由於最近才變成 Windows 程式開發人員所以不熟悉 COM,趁此機會好好研究一番吧! 請注意: COM 是一...
-
起因於"大話設計模式"一書,我將重新學習 Design Pattern (設計模式)這項觀念,對於 資訊工程 類科的學生可能不陌生,但是對於一直都主修 電機工程 (Electrical Engineering, EE) 的我而言是不熟悉的觀念,雖然說現在 E...
-
subprocess 是 Python 程式語言中用來新增子行程的模組,這是在 PEP 324 中所提出的建議,主要是統一 Python 新增子行程的方法,用來取代 os.system, os.spawn*, os.popen*, popen2.*, commands.* ...
-
人月神話之外,另一本軟體開發管理的經典著作! 與大家介紹一下這本「 約耳趣談軟體:來自專案管理的現場實錄 (Joel on Software) 」,當我買了之後閱讀,才發現所有的文章(不知道是不是全部)在網站上都有( Joel on Software Translation ...
-
NSIS (Nullsoft Scriptable Install System) 是一套建置 Windows 安裝程式 (installers) 的開源軟體,用來將程式或文件打包成一個執行檔給客戶安裝使用。NSIS 採用腳本 (Script) 的方式建置 Windows 安裝...
沒有留言:
張貼留言