PyQt5GUI應用程序工具包入門(一)——環境搭建
眾所周知,PyQt5是一款優秀的GUI工具集,可用於python界面的快速開發。
本文採用Python3.6+PyCharm社區版進行PyQt5的開發。對於python環境和PyCharm的安裝本文不再贅述。本文講述怎樣對PyCharm進行優化,使我們的PyQt開發更為方便。
添加外部的工具
PyQt的開發需要三個外部工具,分別為:
* QtDesigner:可視化界面編輯器,生成.ui文件。
* PyUIC:將QtDesigner生成的UI文件轉換為py文件。
* PyRcc:將資源文件轉換為py文件。
圖1 ExternalTool設置界面
單擊菜單欄的「File」→「settings…」調出settings對話框,選擇「Tools」→「External Tools」即顯示如圖1所示的工具界面,單擊「+」即可增加擴展工具,彈出如圖2所示的工具編輯界面。
圖2 工具添加/設置界面
界面上表單的含義如下:
* Name:工具名稱,這裡為QtDesigner工具;
* Group:工具分組,由於我們設置的均為Qt工具,故均為:QT Tool;
* Program:調用的外部程序,我們調用的為designer文件;
* Parameters:程序參數;
* Working Directory:工作目錄。
其中以「$…$」包含的為宏命令,可單擊「Insert Macro…」查看和添加,常用的宏值如下:
- $FileName$:當前文件名,
- $FileDir$:當前程序文件夾,
- $PyinterpreterDirectory$:python目錄。
三個工具的設置如下:
- QtDesigner工具:
名稱:QtDesigner
程序:$PyInterpreterDirectory$Libraryindesigner.exe
參數:無
工作目錄:$FileDir$。
- PyUIC工具:
名稱:QtDesigner
程序:$PyInterpreterDirectory$python.exe
參數:-m PyQt5.uic.pyuic $FileName$ -o $FileNameWithoutExtension$.py
工作目錄:$FileDir$。
- pyRCC工具:
名稱:QtDesigner
程序:$PyInterpreterDirectory$Libraryinpyrcc5.exe
參數:$FileName$ -o $FileNameWithoutAllExtensions$_rc.py
工作目錄:$FileDir$。
至此,Qt常用的外部工具已添加完畢。以後可從菜單欄「Tool」中調用它們,或者在項目管理界面的文件名上單擊滑鼠右鍵也可找到調用命令。
定義模板
PyCharm模板的模板分為文件模板和活動模板,前者是一個文件的模板,後者是一條或多條語句的模板。靈活運用模板可以使開發效率成倍提高。
文件模板
文件模板在「settings…」對話框的「Editor」→「File and Code Templates」中設置和查看。如圖3所示。
圖3 文件模板
單擊「+」號可創建模板,然後在Name文本框中輸入名字,在Extension文本框中輸入擴展名(如:py),在下面的大文本框中輸入文件模板內容即可。
筆者為PyQt5開發建立了3個文件模板,2個py文件模板(窗口文件模板和主程序文件模板)和1個qrc文件模板(資源文件)。設置如下:
- 窗口文件模板
名稱:QtWidget File
擴展名:py
內容:
# -*- coding: utf-8 -*-from PyQt5.QtWidgets import *class Ui_Form(QWidget): def __init__(self): super().__init__()
- 主程序文件模板
名稱:PyQt5Main
擴展名:py
內容:
# -*- coding: utf-8 -*-from PyQt5 import QtWidgetsfrom Dlg import Ui_Formimport sysif __name__ == "__main__": app = QtWidgets.QApplication(sys.argv) myshow = Ui_Form() myshow.show() sys.exit(app.exec_())
- 資源文件模板
名稱:resource File
擴展名:qrc
內容:
<rcc vesion="1.0"> <qresource> </qresource></rcc>
定義好文件模板後可以通過新建文件,方便得建立文件。
- 活動模板
活動模板在「settings…」對話框的「Editor」→「Live Templates」中設置和查看。如圖4所示。
圖4 活動模板
可以看到PyCharm中已經定義好了許多活動模板,如:main、iter、itere,所表示的代碼如圖4所示,我們可以輸入模板名,然後按「Tab」鍵即可自動補全語句。
筆者為方便PyQt5的開發,定義了Widgets表示:from PyQt5.QtWidgets import *,以方便模塊導入。讀者可自行定義其他模板,以方便開發。
推薦閱讀: