You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyQt5加载.ui文件打开新窗口触发SHELL重启问题求助

PyQt5加载.ui文件打开新窗口触发SHELL重启问题求助

我最近碰到一个PyQt5的棘手问题,折腾了好半天都没头绪,特意来这儿求助各位大佬!

具体情况是:我用Qt Designer做了两个.ui文件,主窗口Main.ui加载完全正常,但点击按钮调用loadSingleVideoUI()打开singleVideo.ui对应的窗口时,直接触发了"RESTART: SHELL",控制台没有任何错误输出。更奇怪的是,如果我把loadSingleVideoUI()里的代码改成重新加载主窗口Main(),就能正常打开新窗口,完全没问题。

以下是我的完整代码:

from PyQt5 import QtWidgets, uic
import sys

class singleVideo(QtWidgets.QDialog):
    def __init__(self):
        super(singleVideo, self).__init__()
        uic.loadUi('singleVideo.ui', self)

def loadSingleVideoUI():
    print("click!")
    window = singleVideo()
    window.show()

class Main(QtWidgets.QDialog):
    def __init__(self):
        super(Main, self).__init__()
        uic.loadUi('Main.ui', self)
        self.Single.clicked.connect(lambda:loadSingleVideoUI())

app = QtWidgets.QApplication(sys.argv)
window = Main()
window.show()
sys.exit(app.exec_())

我已经尝试了这些方法,但都没能解决问题:

  • 上网搜了一圈,找到的都是没得到解答的论坛提问
  • 在Python Discord服务器问过,有人提醒我要确保函数里不要创建新的QApplication实例(这点我已经做到了,整个代码只有一个QApplication实例)
  • 还咨询过ChatGPT,但没得到有效的排查方向

有没有大佬能帮我分析下问题到底出在哪儿?


备注:内容来源于stack exchange,提问作者Qwerzy34

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 10:24:36