准備工作
- python3.5以上,目前安裝為anaconda
- Qt5.9,安裝過程見以前文章
- PyQt5.6,通過anaconda更新
- 示例程序:CRC校驗
創建界面
-
通過qt designer設計界面,一個輸入text edit,一個輸出text edit,一個按鍵pushbutton,保存".ui"文件到python工程目錄
-
創建一個python界面的啟動腳本mainwin.py,加入以下內容:
import sys
from PyQt5 import QtCore, QtGui, uic,QtWidgets
qtCreatorFile = "MainWindow.ui" # Enter file here.
Ui_MainWindow, QtBaseClass = uic.loadUiType(qtCreatorFile)
class MyApp(QtWidgets.QMainWindow, Ui_MainWindow):
def __init__(self):
QtWidgets.QMainWindow.__init__(self)
Ui_MainWindow.__init__(self)
self.setupUi(self)
self.pushButton.clicked.connect(self.CalculateCKV)
def CalculateCKV(self):
stringin = str(self.textEdit_2.toPlainText())
self.textEdit.setText(stringin)
if __name__ == "__main__":
app = QtWidgets.QApplication(sys.argv)
window = MyApp()
window.show()
sys.exit(app.exec_())
注意qtCreatorFile = "MainWindow.ui" # Enter file here.
這里要換成相應的.ui文件。
程序流程
window = MyApp()
這里進入__init__(self)
,初始化后創建了一個溝槽self.pushButton.clicked.connect(self.CalculateCKV)
,即pushButton按下后會調用MyApp下面的CalculateCKV函數,CalculateCKV傳進來的參數是MyApp里面所包含的,即self包括了pushbutton和textEdit等,直接復制文本顯示到另一個文本框中