PyQt5系列教程(2):拖拖拽拽寫程序

很多同學都知道PyQt5圖形界面編程中有Qt設計師這個東西,那麼這玩意怎麼用呢?下文會談到。

首先我們來介紹一下PyQt5開發環境的搭建!

在教程中我們使用的Python3.5.2和PyQt5.6的開發環境。具體怎麼搭建呢,主要分以下幾個步驟:

1. 對於Python來說我們下載的是它的集成開發環境anaconda3-4.2.0,這個是針對Python3.5的。

為什麼選擇這個集成開發環境?原因如下:

  • 該集成開發環境使用廣泛
  • 包含了眾多流行的科學、數學、工程、數據分析的 Python 包
  • 完全開源和免費
  • 全平台支持:Linux、Windows、Mac
  • 支持 Python 2.x 和 3.x

2. 安裝PyQt5-5.6-gpl-Py3.5-Qt5.6.0-x32-2.exe

這個也是我們選擇Python3.5版本的原因。因為這個是PyQt針對windows用戶提供了一個exe的安裝包。這個安裝包是針對Python3.5版本的。通過這個安裝包能夠實現我們的快速安裝,方便使用。而anaconda官網上提供的是最新的Python3.6的開發環境。

3. 我們再安裝eric6這個程序編輯器,通過這個程序編輯器實現快速圖形界面的開發。當然你有更順手的也一樣。

-------------------------------------------------------華麗的分割線---------------------------------------------------------

下面我們圖解一下相關的步驟:

1. 先去微信公眾號-課程中軟體下載上去下載本次教程中相應的開發工具,當然你也可以去官方網站上去下載,具體網址見最後。

2. anaconda安裝比較簡單,除了安裝路徑改成在c盤外,其它均採用默認設置,一路next下去就行了。

3. 接下來我們安裝PyQt5-5.6-gpl-Py3.5-Qt5.6.0-x32-2.exe,同anaconda一樣,一路next下去就行了。

4. 這個時候我們可以使用"import PyQt5"驗證一下是否安裝成功了。

5. 最後我們再來安裝eric6-17.06,這個的安裝較前面的有點複雜,我們一步一步來。我們將下載下來的文件進行解壓,發現文件中有一個名為"install.py"的文件,這個就是我們需要的安裝文件。

5.1. 現在我們在當前目錄下,打開命令行,輸入:python install.py,進行安裝。實際的安裝時間比動畫裡面的時間長一點。出現"Press enter to continue..."時候表明已經安裝完畢。

5.2 那麼可自行文件在哪裡呢?因為我們anaconda3是安裝在c盤,所以我們在C:Anaconda3Scripts目錄下,找到一個名為"eric6"的批處理文件,這個就是啟動eric6的啟動鑰匙了。我們將其複製到桌面以備後用。

5.3 雙擊"eric6"這個批處理文件(會出現一閃的情況,耐心等待一下),如果出現如下的畫面,基本表示已經成功了。

5.4 剩下的就是要對其進行一些基本配置,以便使用。先配置一下api,如下圖:

語言我們選擇:Python3。然後添加API進行編譯。如下圖:

添加api進行編譯,編譯的時間相對較長,請耐心等待。

最後我們把eric6的補全功能加上。如下圖:

5.5 好了,我們試一試找一個例子來試一試吧。具體的程序講解放到下期。

import sysnfrom PyQt5.QtWidgets import QApplication, QWidgetnnnif __name__ == __main__:nn app = QApplication(sys.argv)nn w = QWidget()n w.resize(250, 150)n w.move(300, 300)n w.show()nn sys.exit(app.exec_())n

執行結果如下,好有windows風格:

之前和同學交流的時候希望能用Qt設計師演示一下程序的開發。下面我們來演示一下。

1. 首先打開eric6,新建一個項目。

2. 選擇窗體,新建窗體,主窗口。生成的UI文件保存到當前項目。

3. 然後我們進入Qt設計師。Qt左側有很多小部件供我們選擇,當然這個例子不用。直接保存即可,然後回到eric6。

4. 因為生成的是UI文件,無法運行啊,我們需要將其轉成py文件。在所涉及的UI文件上單機右鍵,選擇編譯窗體。

5. 出現編譯成功即可。建議所有文件名及所在文件夾,均用英文,避免出現未知錯位

6. 下圖就是我們編譯後的UI文件啦。

7. 雙擊打開編譯後的py文件,發現好多代碼。

from PyQt5 import QtCore, QtGui, QtWidgetsnnclass Ui_MainWindow(object):n def setupUi(self, MainWindow):n MainWindow.setObjectName("MainWindow")n MainWindow.resize(721, 565)n self.centralWidget = QtWidgets.QWidget(MainWindow)n self.centralWidget.setObjectName("centralWidget")n MainWindow.setCentralWidget(self.centralWidget)nn self.retranslateUi(MainWindow)n QtCore.QMetaObject.connectSlotsByName(MainWindow)nn def retranslateUi(self, MainWindow):n _translate = QtCore.QCoreApplication.translaten MainWindow.setWindowTitle(_translate("MainWindow", "MainWindow"))nnnif __name__ == "__main__":n import sysn app = QtWidgets.QApplication(sys.argv)n MainWindow = QtWidgets.QMainWindow()n ui = Ui_MainWindow()n ui.setupUi(MainWindow)n MainWindow.show()n sys.exit(app.exec_())n

8. 按下F2,然後ok鍵,運行一下這個py文件。執行結果如下:

除了大些,貌似都一樣啊。但是代碼多了很多。沒有完美的東西,畢竟我們在享受Qt設計師給我們帶來的愉悅的同時,自然要承受一些不足了。

這也是我強調為什麼要先學代碼後用Qt設計師的原因,只有學會的基本的知識,才知道如何改進和優化代碼啊!

--------------------------------------------------------華麗的分割線--------------------------------------------------------

今天的最後一部分,我們在介紹一下跨平台的問題。我們知道PyQt5的圖形程序是可以在linux下運行的,所以我們把剛才編寫的程序,放到ubuntu運行一下,我用的是ubuntu kylin 14.04,僅供演示一下。

當然運行之前把環境還是要搭建一下,這個比較簡單,就不做圖解。用一個小命令就搞定了。

sudo apt-get install python3-pyqt5n

然後將程序運行一下,看看執行結果啦,這裡運行的程序名稱是:"win.pyw"

chmod +x win.pywnpython3 win.pywn

ubuntu環境下的窗口好有ubuntu風格,的確和windows系統下有較大的樣式差異性。

好了,今天就約到這裡,我們下期再約。

附:

PyQt5的官網地址:Browse /PyQt5 at SourceForge.net

anaconda的官網地址:Continuum

eric6的官網地址:The Eric Python IDE

最後附上我的微信公眾號:學點編程吧,歡迎關注,下載開發工具。

推薦閱讀:

TAG:PyQt | Python | Python教程 |