新聞中心
圖形用戶界面(Graphical User Interface,簡(jiǎn)稱 GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計(jì)算機(jī)操作用戶界面。圖形用戶界面是一種人與計(jì)算機(jī)通信的界面顯示格式,允許用戶使用鼠標(biāo)等輸入設(shè)備操縱屏幕上的圖標(biāo)或菜單選項(xiàng),以選擇命令、調(diào)用文件、啟動(dòng)程序或執(zhí)行其它一些日常任務(wù)。

Python GUI常用框架
Flexx
Flexx是一個(gè)純Python工具包,用于創(chuàng)建圖形用戶界面(GUI),它使用Web技術(shù)進(jìn)行渲染。 應(yīng)用程序完全用Python編寫(xiě);PScript轉(zhuǎn)換器動(dòng)態(tài)生成必要的JavaScript。 項(xiàng)目地址:https://github.com/flexxui/flexx 入門(mén)指南:https://flexx.readthedocs.io/en/stable/guide/index.html
安裝
Flexx需要Python 3.5+,也適用于pypy。 此外,它還依賴以下的庫(kù):
要安裝最新版本(和依賴項(xiàng)),請(qǐng)使用以下任一命令:
pip install flexx conda install flexx -c conda-forge 或者用以下方法來(lái)獲得更新:
pip install https://github.com/flexxui/flexx/archive/master.zip
wxPython
wxPython是用于Python編程語(yǔ)言的跨平臺(tái)GUI工具箱。它允許Python程序員輕松,輕松地創(chuàng)建具有健壯,功能強(qiáng)大的圖形用戶界面的程序。它是作為一組Python擴(kuò)展模塊實(shí)現(xiàn)的,這些模塊包裝了用C ++編寫(xiě)的流行wxWidgets跨平臺(tái)庫(kù)的GUI組件 。 官網(wǎng):https://www.wxpython.org/
Kivy
Kivy是開(kāi)源Python函式庫(kù),用于開(kāi)發(fā)行動(dòng)應(yīng)用程序和其它采用自然用戶界面的多點(diǎn)觸控應(yīng)用軟件。它可以在Android,iOS,Linux,OS X和Windows執(zhí)行。采用MIT授權(quán)條款,Kivy是自由并且開(kāi)源的軟件。 官網(wǎng):https://kivy.org/
PyQt
PyQt是Qt公司 Qt應(yīng)用程序框架的一組Python v2和v3綁定,可在Qt支持的所有平臺(tái)上運(yùn)行,包括Windows,OS X,Linux,iOS和Android。PyQt5支持Qt v5。PyQt4支持Qt v4,并將針對(duì)Qt v5進(jìn)行構(gòu)建。綁定是作為一組Python模塊實(shí)現(xiàn)的,包含1000多個(gè)類。 官網(wǎng):https://www.riverbankcomputing.com/software/pyqt/intro
Tkinter
Tkinter 是使用 python 進(jìn)行窗口視窗設(shè)計(jì)的模塊。Tkinter模塊(“Tk 接口”)是Python的標(biāo)準(zhǔn)Tk GUI工具包的接口。作為 python 特定的GUI界面,是一個(gè)圖像的窗口,tkinter是python 自帶的,可以編輯的GUI界面,我們可以用GUI 實(shí)現(xiàn)很多直觀的功能,比如想開(kāi)發(fā)一個(gè)計(jì)算器,如果只是一個(gè)程序輸入,輸出窗口的話,是沒(méi)用用戶體驗(yàn)的。所有開(kāi)發(fā)一個(gè)圖像化的小窗口,就是必要的。 索引:https://wiki.python.org/moin/TkInter
Pywin32
Windows Pywin32允許你像VC一樣的形式來(lái)使用PYTHON開(kāi)發(fā)win32應(yīng)用。代碼風(fēng)格可以類似win32 sdk,也可以類似MFC,由你選擇。如果你仍不放棄vc一樣的代碼過(guò)程在python下,那么這就是一個(gè)不錯(cuò)的選擇。 項(xiàng)目地址:https://github.com/mhammond/pywin32
PyGTK
PyGTK讓你用Python輕松創(chuàng)建具有圖形用戶界面的程序 官網(wǎng):https://pygobject.readthedocs.io/en/latest/
創(chuàng)建應(yīng)用程序
使用wxPython框架
安裝
Windwos與MAC平臺(tái)使用pip工具安裝wxPython只需要一行命令: pip install -U wxPython Linux平臺(tái):
由于發(fā)行版和wx端口(GTK2或GTK3)有多種選項(xiàng),因此文件不能全部位于同一文件夾中,以便通過(guò)pip輕松訪問(wèn)。這只是意味著您需要進(jìn)一步細(xì)化以找到要提供給pip的URL。例如,要獲取適用于Ubuntu 16.04(和16.10,LinuxMint 18以及其他版本)的GTK3 wxPython構(gòu)建,可以使用如下pip命令:
pip install -U \
-f https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-16.04 \
wxPython
準(zhǔn)備
注意:本部分知識(shí)來(lái)源與網(wǎng)絡(luò) 使用wxPython之前,先了解兩個(gè)基礎(chǔ)對(duì)象:應(yīng)用程序?qū)ο蠛晚敿?jí)窗口。 應(yīng)用程序?qū)ο蠊芾碇魇录h(huán),主事件循環(huán)是wxPython程序的動(dòng)力。如果沒(méi)有應(yīng)用程序?qū)ο螅瑆xPython應(yīng)用程序?qū)⒉荒苓\(yùn)行。 頂級(jí)窗口通常用于管理最重要的數(shù)據(jù),控制并呈現(xiàn)給用戶。 兩個(gè)基礎(chǔ)對(duì)象和應(yīng)用程序的其他部分之間的關(guān)系如下圖所示: 這個(gè)應(yīng)用程序?qū)ο髶碛许敿?jí)窗口和主循環(huán)事件。頂級(jí)窗口管理其窗口中的組件和其他的分配給它的數(shù)據(jù)對(duì)象。窗口和它的組件觸發(fā)的事件基于用戶的動(dòng)作,并接受事件通知以便改變顯示。
Hell Word
代碼:
import wxapp = wx.App(False)frame = wx.Frame(None,wx.ID_ANY,"Hello,world!!!_Linux就該這么學(xué)")frame.Show(show=True)app.MainLoop() 解析: 注意:
-
可以用-1來(lái)替代wx.ID_ANY,-1 就是默認(rèn)值的意思。另外wxWidgets還提供了其它的標(biāo)準(zhǔn) ID(v2.8)。 你也可以自定義一個(gè)ID,但Getting Started with wxPython 認(rèn)為,沒(méi)有理由那樣做,用標(biāo)準(zhǔn)ID更好。
-
wx.Frame的完整語(yǔ)法是:
wx.Frame(parent, id=-1, title="", pos=wx.DefaultPosition,size=wx.DefaultSize, style=wx.DEFAULT_FRAME_STYLE,name="frame")parent:框架的父窗口。如果是頂級(jí)窗口,這個(gè)值是None。 id:關(guān)于新窗口的wxPython ID號(hào)。通常設(shè)為-1,讓wxPython自動(dòng)生成一個(gè)新的ID。 title:窗口的標(biāo)題。 pos:一個(gè)wx.Point對(duì)象,它指定這個(gè)新窗口的左上角在屏幕中的位置。在圖形用戶界面程序中,通常(0,0)是顯示器的左上角。這個(gè)默認(rèn)值(-1,-1)將讓系統(tǒng)決定窗口的位置。 size:一個(gè)wx.Size對(duì)象,它指定這個(gè)窗口的初始尺寸。這個(gè)默認(rèn)值(-1,-1)將讓系統(tǒng)決定窗口的初始尺寸。 style:指定窗口的類型的常量??梢允褂没蜻\(yùn)算來(lái)組合它們。 name:框架內(nèi)在的名字。可以使用它來(lái)尋找這個(gè)窗口。
Python GUI界面編程-初識(shí)篇到此結(jié)束,感謝您的閱讀,愿您可從此文獲取收獲。
當(dāng)前名稱:分享一下PythonGUI常用框架
標(biāo)題來(lái)源:http://m.fisionsoft.com.cn/article/copsdic.html


咨詢
建站咨詢
