pyFormUI: 一個簡單的Python GUI介面框架
阿新 • • 發佈:2018-11-15
Python開發GUI介面, 可以使用pyQT或者wxpython。 不過不論pyQT還是wxpython都需要比較多的學習成本。Python工程往往是用於快速開發的,有些時候引入pyQT,wxpython會讓python工程變得比較複雜。
在很多情況下,python開發的都是命令列程式,使用者很多時候抱怨最大的不是程式的輸出,而是命令列的引數需要記憶。所以很多時候,python命令列程式並不需要整個程式都是GUI,只需要命令列輸入替換為GUI, 程式的設定替換為GUI就可以了。
比如說,git命令功能很強大,對於初學者而言,最大的困難就在於git命令如何寫,git命令執行結果在terminal中輸出,大部分人還是勉強可以接受的。
這裡介紹一個Python框架,可以快速的設計出GUI。可以說是目前最簡單的python GUI開發框架。
pyFormUI基於wxpython設計的,不過對wxpython進行了完全封裝。使用時不用瞭解wxpython.
安裝pyFormUI
1.下載pyFormUI
pyFormUI在:
https://github.com/jeffchau1979/pyFormUI
git clone https://github.com/jeffchau1979/pyFormUI.git
2.安裝wxpython
sudo apt-get install python-wxtools
python Demo.py
可看到執行結果:
編寫pyFormUI程式
可以參考Demo目錄下的SimpleDemo.py ,SimpleDemo.xml這個例子來建立pyFormUI程式。
1.程式的介面是採用XML定義的
<?xml version="1.0"?> <form title="Demo GUI" width='500' height='100'> <line> <static title="Text:" width='50' /> <textid='id_text'/> </line> <line align="right"> <button id='id_ok' title='Ok'/> </line> </form>
2. 然後載入xml介面,並顯示,這部分程式碼按如下模版寫就可以了。
from FormUI import * builder = Builder() builder.loadLayout('demo.xml') formUI = FormUI(builder) formUI.show()
3. 對xml中定義的控制元件,新增處理
def OkButtonHandler(windowHandler, handlerPara):
print handlerPara.getValue('id_text') windowHandler.closeWindow() builder.setCtrlHandler('id_ok', OkButtonHandler)編寫pyFormUI程式時,要做的就是在xml中定義介面佈局, 然後對控制元件新增處理。