標籤:hello ttext 實現 編程 項目 style com 添加 刪除
轉自:http://www.cnblogs.com/hhh5460/p/4232086.html
【題記】
我是一個菜鳥,這個系列是我的學習筆記。
PyQt5 出來有一段時間了, PyQt5 較之 PyQt4 有一些變化,而網上流傳的幾乎都是 PyQt4 的教程,照搬的話大多會出錯。
eric6 也是剛剛出來,eric6 與 PyQt5 結合的教程網上幾乎沒有。
本人也是一邊學習,一邊摸索,並記錄與此,希望幫到有需要的朋友,更希望路過的大俠多多指教為好。
【引子】
用 eric6 與 PyQt5 結合,非常方便的實現介面與邏輯分離,滿足python的極速GUI編程,你只需要關注程式的邏輯實現,不需要在介面上花很多時間。
可以說這是一對完美的組合!
下面的內容基於:windows 7 + python 3.4.2 + PyQt5 + eric 6
【概覽】
本文實現如下的程式:
主要步驟如下:
1、在eric6中建立項目
2、進入PyQt5 Desinger編輯圖形介面(自動進入),並儲存
3、回到eric 6將剛才的介面檔案編譯
4、然後給介面添加自己的程式邏輯
5、py2exe打包成exe檔案(此步略)
【本文】
1、在eric6中建立項目
2、進入PyQt5 Desinger編輯圖形介面(自動進入),並儲存
在表單中添加一個文字標籤(label)、兩按鈕(pushButton)
設定文字標籤、兩按鈕的對象名(objectName)為:label_hello,pushButton_ok,pushButton_close
設定文字標籤、兩按鈕的文字(text)為:"在此顯示","確定","退出"
給退出按鈕添加訊號/槽 (註:訊號/槽機制是PyQt專屬的訊號傳遞機制,使用非常方便)
儲存,然後關閉PyQt Designer
3、回到eric 6,將剛才的介面檔案編譯
回到eric 6後,發現表單下多了個hello.ui檔案,此檔案本質是一個xml格式檔案,不能被運行,需要右擊它
編譯成功之後,發現源檔案下多出了Ui_hello.py檔案,這個檔案就可以運行了
試著運行它,
Wow! 介面出來了。一切正常。不過你會發現,只有退出按鈕起作用,而確定按鈕沒反應。那是因為我們還沒給確定按鈕添加邏輯代碼
這事好辦,到表單下右擊hello.ui檔案,選擇 產生對話方塊代碼
此處勾選pushButton下的on_pushButton_ok_clicked()
回到原始碼下,發現又多出了一個hello.py檔案
不管三七二十一,先運行它再說。呀!錯誤!!!
這個錯誤應該是eric 6的一個bug!!!,去掉Ui前面的點號,再運行,就沒有報錯了。真是太好了!誒,等一下,怎麼沒看到表單出來呢?
少了幾行代碼,此處可以認為也是eric 6的一個bug。那就自己動手吧,在hello.py的最下面添加這幾行:
1 if __name__ == ‘__main__‘:2 import sys3 from PyQt5.QtWidgets import QApplication4 app = QApplication(sys.argv)5 dlg = Hello()6 dlg.show()7 sys.exit(app.exec_())
長噓一口氣,表單終於又出來了,但是點擊確定按鈕的時候報錯了又。原因很簡單,我們還沒有覆寫給確定按鈕的邏輯代碼
把原來的代碼刪除,修改為一句。沒錯,我們的邏輯代碼就是一句代碼:
self.label_hello.setText(‘Hello world!‘)
儲存一下,然後運行。OK,大功告成!
最後的話,eric + pyqt 進行python的gui編程真的是太方便了,只需要關注邏輯實現就可以了
用 eric6 與 PyQt5 實現python的極速GUI編程(系列01)--Hello world!