使用pycharm+pyqt5 調取介面程式
1)開啟的介面設計工具QtDesigner,如圖:
2)新建窗體,選擇Main Window:
3)分別在視窗新增如下控制元件,Calendar、3個pushButton、checkBox、text Browser、text Edit如圖所示:
4)拖好控制元件之後儲存到pycharm專案資料夾下,生成對應的.ui檔案:
5)右鍵.ui檔案使用PyUIC工具轉化.ui程式碼為.py程式碼:
6)成功生成.py檔案:
7)刪除如下三行:
MainWindow.setCentralWidget(self.centralwidget)、
MainWindow.setMenuBar(self.menubar)、
MainWindow.setStatusBar(self.statusbar)
8)底部新增如下程式碼:
if __name__=="__main__": import sys app=QtWidgets.QApplication(sys.argv) widget=QtWidgets.QWidget() ui=Ui_MainWindow() ui.setupUi(widget) widget.show() sys.exit(app.exec_())
9)右鍵Run就可以看到圖形介面了:
圖形介面:
二、在pycharm中用自己的程式碼調取圖形介面:
1)新建一個.py檔案在專案中,如圖,我的叫blogTest.py :
2)分別在檔案中,新增以下內容:
寫一個類,繼承介面UI類,新增初始化方法,程式碼入口處使用show方法顯示介面,程式碼如下:
import sys from blog import Ui_MainWindow from PyQt5 import QtWidgets class mywindow(QtWidgets.QWidget, Ui_MainWindow): def __init__(self): super(mywindow, self).__init__() self.setupUi(self)if __name__=="__main__": app=QtWidgets.QApplication(sys.argv) myshow=mywindow() myshow.show() sys.exit(app.exec_())
3)右鍵執行,介面出現:
4)
在QtDisigner新增控制元件事件
1)開啟QtDesigner 載入上次構建ui檔案:
2)新增控制元件事件:
Qt中對控制元件事件觸發都統一稱為槽和訊號,我這理解為觸發源和目標源,事件的新增方法就是在QtDesigner中使用 編輯槽/訊號 功能後,點選觸發源,拖動訊號線指向目標源,如下圖,我使用了pushButton作為了觸發源,calendar作為目標源,拖動結束後,會出現事件編輯欄,左邊的為觸發源的事件,右邊為目標源的事件,分別選擇即可,步驟如下圖:
3)同理,分別用兩個按鈕添加了兩個事件,QtDesigner會顯示各觸發源和目標源的事件:
4)儲存UI檔案,在Pycharm中生成.py檔案,可以在程式碼中看到新增的事件,qt使用了connect方法連線了槽和訊號,記得順手刪除影響編譯的三行程式碼:
二、執行效果:
1)執行調取視窗的.py
2)執行後,分別點選兩個pushButton,可以看到calendar控制元件的隱藏和顯示功能:
隱藏:
顯示: