Python, PySide2图形界面编程-入门小程序,输入薪资表并分类显示
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_() # 持续 显示 窗口
输入内容后的运行界面如下:
点击“统计”后的弹出窗口如下: