一粒沙7 2023-09-08 16:23 采纳率: 0%
浏览 26

python 加载UI出现提示

在使用python对ui.UI界面进行加载时,出现错误,但是不影响运行,这是怎么回事?
代码如下:

from PySide6.QtWidgets import QWidget, QApplication, QLabel, QPushButton
from PySide6.QtUiTools import QUiLoader

class first_window:
    def __init__(self):
        self.ui = QUiLoader().load("ui_1.ui")

app = QApplication()
mywindow = first_window()
mywindow.ui.show()
app.exec()

出现错误如下:

qt.pysideplugin: Environment variable PYSIDE_DESIGNER_PLUGINS is not set, bailing out.
qt.pysideplugin: No instance of QPyDesignerCustomWidgetCollection was found.
Qt WebEngine seems to be initialized from a plugin. Please set Qt::AA_ShareOpenGLContexts using QCoreApplication::setAttribute and QSGRendererInterface::OpenGLRhi using QQuickWindow::setGraphicsApi before constructing QGuiApplication.


  • 写回答

2条回答 默认 最新

  • 呈两面包夹芝士 2023-09-08 16:25
    关注

    你遇到的错误提示是关于PySide6设计器插件的问题,以及与Qt WebEngine的初始化有关。这些错误通常不会影响到程序的运行,但可能会导致某些功能或插件无法正常工作。

    以下是一些建议来解决这些问题:

    1. 设置环境变量:
      错误信息中提到了PYSIDE_DESIGNER_PLUGINS环境变量未设置。你可以通过以下代码设置该环境变量,使其指向PySide6的插件目录:
    import os
    from pathlib import Path
    
    plugins_path = Path(os.__file__).absolute().parent / "Lib" / "site-packages" / "PySide6" / "plugins"
    os.environ["PYSIDE_DESIGNER_PLUGINS"] = str(plugins_path)
    

    请确保这个路径指向的是你的PySide6安装目录下的正确插件位置。

    1. 检查Qt版本和组件:
      确保你已经安装了与PySide6兼容的Qt版本,以及所需的组件。在某些情况下,可能需要安装额外的Qt组件或插件才能正常加载UI文件并显示窗口。
    2. 初始化Qt WebEngine:
      错误信息中提到了Qt WebEngine的初始化问题。如果你在程序中使用了Qt WebEngine相关的功能,确保在使用QGuiApplication之前设置了Qt::AA_ShareOpenGLContextsQSGRendererInterface::OpenGLRhi属性。这可以通过以下代码实现:
    app = QApplication([])
    app.setAttribute(Qt.AA_ShareOpenGLContexts)
    app.setAttribute(Qt.AA_UseOpenGLES) # 如果你使用的是嵌入式OpenGL ES
    
    1. 检查UI文件:
      确保ui_1.ui文件存在,并且没有任何错误。有时候,UI文件中的一些错误会导致加载失败或出现其他问题。
    2. 检查PySide6版本:
      确保你使用的PySide6版本是与你的Qt版本兼容的。不同版本的PySide6可能与不同的Qt版本不兼容。
    3. 检查IDE或编辑器设置:
      如果你使用的是集成开发环境(IDE)或编辑器,确保它们的Python解释器和环境配置是正确的,并且IDE或编辑器没有对程序进行其他可能干扰的更改。
    评论

报告相同问题?

问题事件

  • 创建了问题 9月8日