pyside2安装和使用

安装pyside2:

pip install pyside2

一个简单的案例:

from PySide2.QtWidgets import QApplication, QMainWindow, QPushButton, QPlainTextEdit, QMessageBox


class Stats():
    def __init__(self):
        self.window = QMainWindow()
        self.window.resize(500, 400)
        self.window.move(300, 300)
        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(380, 80)

        self.button.clicked.connect(self.handleCalc)

    def handleCalc(self):
        info = self.textEdit.toPlainText()

        # 薪资20000 以上 和 以下 的人员名单
        salary_above_20k = ''
        salary_below_20k = ''
        for line in info.splitlines():
            if not line.strip():
                continue
            parts = line.split(' ')
            # 去掉列表中的空字符串内容
            parts = [p for p in parts if p]
            name, salary, age = parts
            if int(salary) >= 20000:
                salary_above_20k += name + '\n'
            else:
                salary_below_20k += name + '\n'

        QMessageBox.about(self.window,
                          '统计结果',
                          f'''薪资20000 以上的有:\n{salary_above_20k}
                    \n薪资20000 以下的有:\n{salary_below_20k}'''
                          )


app = QApplication([])
stats = Stats()
stats.window.show()
app.exec_()

常见问题

运行python qt程序时,弹出错误提示框,显示如下提示信息

This application failed to start because no Qt platform plugin could be 
initialized. Reinstalling the application may fix this problem.

解决方法是:

把 PySide2 安装在解释器目录下的 \plugins\platforms 目录添加到环境变量Path中。

比如,我的环境就是把这个路径加到 环境变量 Path 中

c:\Python38\Lib\site-packages\PySide2\plugins\platforms

 

另外有这种说法:

如果使用的 Python 解释器 是 Anaconda/Miniconda里面的,请把 \plugins\platforms 目录添加到环境变量 QT_QPA_PLATFORM_PLUGIN_PATH 中。

另外:

pycharm项目路径不要带中文,这个我也遇见过改成英文就能正常运行了。

© 版权声明
THE END
喜欢就支持一下吧
点赞11赞赏 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容