當使用桌面應用程序的時候,有沒有那麼一瞬間,想學習一下桌面應用程序開發?行業內專業的桌面應用程序開發通常是C++,C#來作,Java開發的也有,可是比較少。本節課會介紹Python的GUI(圖形用戶界面)編程,用Python也能夠寫出漂亮的桌面程序,建議這次課程你們稍做了解不要浪費太多時間,由於沒有哪家公司會招聘覺得Python程序員開發桌面程序吧?python
學完本次課程,你們能夠完成一個簡易的記事本編輯器。程序員
15-20分鐘數據庫
Tkinter:使用Tk平臺,支持大多數的Unix系統,同時能夠在Windows和Mac下運行,是Python的標準界面庫,可是因爲界面醜陋,文檔極差而被開發者吐槽。編程
wxpython:擁有成熟和豐富的包,跨平臺,可在Unix,Windows,Mac下運行,入門簡單,文檔寫的很詳細,再加上官方的Demo大全,確實給初學者下降難度,能夠做爲入門學習的首選庫。windows
PythonWin:只能在Windows上使用,調用windows的GUI,若是要作跨平臺的應用程序,顯然不會選擇它。app
PyGTK:使用GTK平臺,Linux系統上使用較多,跨平臺。編程語言
PyQt:優勢界面美觀,多個平臺,文檔和教程豐富。可是商業化使用有版權的問題,須要受權,體積相對較大。編輯器
1.安裝 wxpython函數
pip3 install -U wxPythonoop
其餘版本的請到wxPython官網下載,百度wxpython直達。
2.入門程序 Hello World。
運行結果以下,彈出了一個窗口,標題爲Hello World
安裝好界面庫之後,咱們先實現第一入門程序,在桌面程序中輸出Hello world。
3.代碼分析
先建立一個程序
app = wx.App()
建立完程序,下一步就是建立一個窗口(Frame)
win = app.Frame(None)
建立完成窗口,咱們想要顯示結果怎麼辦?(Show)
win.show()
最後運行主程序MainLoop()
app.MainLoop()
邏輯仍是比較清晰的。
具體每一個方法包含了,哪些參數,你們能夠看一下文檔說的很清楚。
其實,畫界面真沒有太多要講的,大多就是看文檔,瞭解每一個參數和方法的含義。上面的代碼語義也很清楚,添加按鈕,添加文本框,設置位置大小,多行,滾動條。
密密麻麻的文檔,對界面庫感興趣的能夠仔細瞭解一下。
看上去代碼量頗有點多,可是其實仔細分析一下很簡單,先定義兩個方法,當點擊按鈕時觸發,按鈕佈局畫完後,使用Bind()方法,綁定到相應的函數便可。函數內部是咱們上節課學習的文件讀寫操做。
文檔中詳細的說明了每一個參數的含義。
富文本編輯器
200+的Demo,若是把這些都看明白,必定是GUI的大神了。
Python寫界面庫,若是沒有特別大的興趣,點到爲止,瞭解一下就能夠了。
接下來咱們將學習大部分編程語言必會技能:操做數據庫。