Python, PySide2圖形介面程式設計-入門小程式,輸入薪資表並分類顯示
阿新 • • 發佈:2020-11-14
PySide2是一個非常簡單易用,功能強大的python介面設計包。這個包對Python直譯器的版本有要求,經測試在Python3.8.1下可以正常執行。
安裝 方法和其它包一樣:pip install pyside2
下面的一個小程式,只用20多行程式碼就實現了一個最簡單的應用,非常適合初學者測試和體驗PySide2的強大。
from PySide2.QtWidgets import QApplication, QMainWindow, QPushButton, QPlainTextEdit, QMessageBox # 定義一個類將介面視窗設計程式碼進行封裝 class firstWindow(): def __init__(self): self.window = QMainWindow() # 定義視窗物件 self.window.resize(500, 400) # 視窗尺寸 self.window.move(300, 310) # 視窗位置 self.window.setWindowTitle('薪資統計') # 視窗標題 self.textEdit = QPlainTextEdit(self.window) # 定義文字輸入平面物件 self.textEdit.setPlaceholderText('請輸入薪資') # 文字輸入物件提示資訊 self.textEdit.move(10, 25) # 位置 self.textEdit.resize(300, 350) # 尺寸 self.button = QPushButton('統計', self.window) # 定義按鈕物件 self.button.move(350, 100) # 位置 self.button.clicked.connect(self.handleCal) # 按鈕物件被 點選時的回撥函式 self.button.show() # 顯示 按鈕 def handleCal(self): info = self.textEdit.toPlainText() # 獲取文字輸入物件中的文字內容 high = '' # 定義高薪資字串內容變數 low = '' # 定義低薪資字串內容變數 for line in info.splitlines(): # 將獲取的字串按行拆分 name, salary, age = line.split(' ') # 將每行輸入內容以空格為分隔符拆分 if float(salary) >= 5000: # 薪資大於5000的輸入行存到高薪資變數 high += line high += '\n' else: low += line low += '\n' QMessageBox.about(self.window, # 用彈出視窗顯示統計結果 '統計結果', f'''高薪人員如下:\n{high}\n低薪人員如下:\n{low}''' ) app = QApplication([]) # 底層管理視窗類例項化 first = firstWindow() # 定義視窗例項 first.window.show() # 顯示視窗 app.exec_() # 持續 顯示 視窗
輸入內容後的執行介面如下:
點選“統計”後的彈出視窗如下: