① Python GUI庫大匯總
所有程序都是基於命令行的,這些程序可能只有一些「專業」的計算機人士才會使用。例如前面編寫的五子棋等程序,恐怕只有程序員自己才願意玩這么「糟糕」的游戲,很少有最終用戶願意對著黑乎乎的命令行界面敲命令。
相反,如果為程序提供直觀的圖形用戶界面(Graphics User Interface, GUI),最終用戶通過拖動滑鼠、單擊等動作就可以操作整個應用,這樣的應用程序就會很受政迎(實際上,Windows 之所以廣為人知,其最初的吸引力就是來自它所提供的圖形用戶界面)。
作為一個程序設計者,必須優先考慮用戶的感受,一定要讓用戶感到「爽」,程序才會被需要、被使用,這樣的程序才有價值。
在真正開始介紹 Python 圖形界面編程之前,首先簡單介紹一下 Python 的圖形用戶界面庫。
1) PyGObject
PyGObject 庫為基於 GObject 的 C 函數庫提供了內省綁定,這些庫可以支持 GTK+3 圖形界面工具集,因此時 GObject 提供了豐富的圖形界面組件。
2) PyGTK
PyGTK 基於老版本的 GTK+2 的庫提供綁定,藉助於底層 GTK+2 所提供的各種可視化元素和組件,同樣可以開發出在 GNOME 桌面系統上運行的軟體,因此它主要適用於 Linux/UNIX 系統。PyGTK 對 GTK+2 的 C 語言進行了簡單封裝,提供了面向對象的編程介面。其官方網址是http://www.pygtk.org/。
3) PyQt
PyQt 是 Python 編程語言和 Qt 庫的成功融合。Qt 本身是一個擴展的 C++ GUI 應用開發框架,Qt 可以在 UNIX、Windows 和 Mac OS X 上完美運行,因此 PyQt 是建立在 Qt 基礎上的 Python 包裝。所以 PyQt 也能跨平台使用。
4) PySide
PySide 是由 Nokia 提供的對 Qt 工具集的新的包裝庫,目前成熟度不如 PyQt。
5) wxPython
wxPython 是一個跨平台的 GUI 工具集,wxPython 以流行的 wxWidgets(原名 wxWindows)為基礎,提供了良好的跨平台外觀。簡單來說,wxPython 在 Windows上調用 Windows 的本地組件、在 Mac OS 上調用 Mac OS X 的本地組件、在 Linux 上調用 Linux 的本地組件,這樣可以讓 GUI 程序在不同的平台上顯示平台對應的風格。wxPython 是一個非常流行的跨平台的 GUI 庫。
如果讀者有需要,則完全可以選擇上面這些 Python GUI 庫來開發圖形用戶界面。如果考慮開發跨平台的圖形用戶界面,則推薦使用 PyQt 或 wsPython。
② Python如何進行GUI桌面開發有哪些不錯的庫可以推薦
Python進行GUI開發的庫其實很多,下面我簡單介紹幾個不錯橋和的庫,感興趣的朋友可以自己嘗試一下,實驗環境win10+python3.6+pycharm5.0,主要內容如下:
tkinter
這個就不用多說了,python自帶的GUI開發標准庫,對於開發小型簡單的應用來說,完全可以了,開源、跨平台,使用起來非常方便,下面我簡單測試一下,主要代碼如下:
點擊運行程序,效果如下,一個窗口一個Label標簽:
easygui
這個是基於tkinter的一個窗口GUI庫,可以快速創建窗口對話框,包括常見的登陸對話框、注冊對話框等,下面我簡單介紹一下這個庫的安裝和使用:
1.首先,安裝easygui,這個直接在cmd窗口輸入安裝命令「pipinstalleasygui」就行,如下:
2.安裝完成後,我們就可以直接編寫代碼進行測試了,主要代碼如下,非常簡單:
點擊運行這個程序,效果如下:
kivy
這是一個跨平台的GUI應用程序開發庫,可以用來開發安卓、蘋果應用,一套程序,可以處處運行,下面我簡單介紹一下這個庫的安裝和使用:
1.首先,安裝kivy,這個直接按官方教程安裝就行,如下:
2.安裝完成後,就可以直接編寫代碼進行測試了,主要代碼如下,非常簡單:
點擊運行程序,效果如下,這里你可以將其打包為手機應用,安裝到手機上:
wxpython
這也是一個免費、跨平台的PythonGUI開發庫,相比較前面的tkinter來說,功能更為強大,控制項也更多,下面我簡單介紹一下這個庫的安裝和使用:
1.首先,安裝wxpython,這個也直接在cmd窗口輸入命令「pipinstallwxpython」就行,如下:
2.安裝完成後,我們就可以直接編寫相關代碼進行測試了,主要代讓枯碼如下,非常簡單,一個簡單的文本編輯器:
點擊運行這個程序,效果如下:
pyqt
這個Qt的一個Python介面庫,藉助於Qt強大的用戶界面,Python也可以快速開發出GUI程序,組件更多,也更方便,只要你有一定的Qt基礎,很快就能掌握這個庫的使用,下面我簡單介紹一下這個庫的安裝和使用:
1.首先,安裝pyqt,這個直接在cmd窗口輸入安裝命令「pipinstallpyqt5」就行,如下,安裝需要稍微等待一會兒:
2.安裝完成後,我們就可以直接編寫代碼進行測試了,如下,一個簡坦消洞單的計算器:
點擊運行這個程序,效果如下:
至此,我們就介紹完了這5個PythonGUI庫。總的來說,這5個庫使用起來都非常不錯,如果你的應用界面比較簡單,功能要求不高,可以選擇tkinter和easygui,如果界面比較復雜,功能要求比較復雜,可以考慮使用wxpython或pyqt,當然,你也可以使用其他GUI庫,像pygame等,根據實際項目需求而定,網上也有相關資料和教程,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言。
③ 濡備綍鐢 Python 鍐欎竴涓甯 GUI 鐨勭戝﹁$畻紼嬪簭
importsys
frommathimport*
fromPyQt5.QtCoreimport*
fromPyQt5.QtWidgetsimportQApplication,QDialog,QLineEdit,QTextBrowser,QVBoxLayout
classForm(QDialog):
def__init__(self,parent=None):
super(Form,self).__init__(parent)
self.browser=QTextBrowser()
self.lineedit=QLineEdit("TypeanexpressionandpressEnter")
self.lineedit.selectAll()
layout=QVBoxLayout()
layout.addWidget(self.browser)
layout.addWidget(self.lineedit)
self.setLayout(layout)
self.lineedit.setFocus()
self.lineedit.returnPressed.connect(self.updateUi)
self.setWindowTitle("Calculate")
defupdateUi(self):
try:
text=self.lineedit.text()
self.browser.append("%s=<b>%s</b>"%(text,eval(text)))
except:
self.browser.append("<fontcolor=red>%sisinvalid!</font>"%text)
self.lineedit.setText('')
if__name__=="__main__":
app=QApplication(sys.argv)
form=Form()
form.show()
app.exec_()
榪愯岃繖涓紼嬪簭灝辮兘寰楀埌涓涓灝忕殑璁$畻鍣錛屽墠鎻愪綘宸茬粡瀹夎呭ソ浜唒yqt
python涓鐨凣UI鍙浠ュ埄鐢╬yqt榪涜岀紪鍐