【pyside2】第一次练习:This application failed to start because no Qt platform plugin could be initialized.

问题1:

刚准备玩玩就遇到这个问题

This application failed to start because no Qt platform plugin could be initialized.

解决办法:在代码中加入以下代码

import os
import PySide2
dirname = os.path.dirname(PySide2.__file__)
plugin_path = os.path.join(dirname, 'plugins', 'platforms')
os.environ['QT_QPA_PLATFORM_PLUGIN_PATH'] = plugin_path

以下是为什么要这样做的原因:

参考博客内容:

https://blog.csdn.net/ouening/article/details/81093697


问题2:如何使用QT designer制作好ui,并用python调用?

然后就遇到了另一个问题,是直接动态导入ui,还是使用命令导出为py格式。

经过查询资料后总结,应该使用动态方法导入ui,但是Py的格式,用来提取指令名称还是很方便的。

动态导入的代码:

class Stats():
    def __init__(self):
        self.ui = QUiLoader().load('my.ui')  # my.ui按照路径格式写入自己的ui所在位置
        self.ui.Button_excel.clicked.connect(self.ButtonFunc)# Button_excel是ui对象里自定义的名称,绑定单击后的功能

    def ButtonFunc(self): 
        print('test OK')

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

 

my.ui转换成py格式代码,在ui文件存放的位置,打开cmd,使用一下代码:

pyside2-uic my.ui > my.py

 

  • 20
    点赞
  • 63
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值