gpt4 book ai didi

python - 使用错误的参数类型调用 PySide2.QtWidgets.QxxxxLayout.addWidget

转载 作者:行者123 更新时间:2023-12-01 07:49:21 26 4
gpt4 key购买 nike

我正在尝试使用 addWidget 函数将FigureCanvasQTAgg 参数作为小部件添加到某些布局中,但发生了 TypeError。仅当尝试运行使用 pyinstaller 构建的独立应用程序时,才会出现此错误。直接运行脚本时一切正常。

我正在使用 python=3.6PySide2=5.12.3pyInstaller=3.4

from PySide2.QtWidgets import QApplication, QMainWindow, QMessageBox, QLineEdit, QComboBox, QWidget
import matplotlib
matplotlib.use("Qt5Agg")
from PySide2.QtCore import Qt
from matplotlib.backends.backend_qt5agg import FigureCanvasQTAgg as FigureCanvas
from matplotlib.backends.backend_qt5agg import NavigationToolbar2QT as NavigationToolbar
from matplotlib.figure import Figure

class TasksConfigCreatorAdapter(QMainWindow):
def __init__(self):
super(TasksConfigCreatorAdapter, self).__init__()
self.dialog = Ui_TasksConfigCreatorDialog()
self.dialog.setupUi(self)
self.figure = None
self.setupCanvasLayout()

def setupCanvasLayout(self):
if self.figure is None:
self.figure = plt.figure()
self.canvas = FigureCanvas(self.figure)
self.figure.set_facecolor("white")
self.toolbar = NavigationToolbar(self.canvas, None)
self.dialog.canvasLayout.addWidget(self.canvas, *(0, 0))
self.dialog.canvasLayout.addWidget(self.toolbar, *(1, 0))
TypeError: 'PySide2.QtWidgets.QGridLayout.addWidget' called with wrong argument types:
PySide2.QtWidgets.QGridLayout.addWidget(FigureCanvasQTAgg, int, int)
Supported signatures:
PySide2.QtWidgets.QGridLayout.addWidget(PySide2.QtWidgets.QWidget, int, int, PySide2.QtCore.Qt.Alignment=Default(Qt.Alignment))
PySide2.QtWidgets.QGridLayout.addWidget(PySide2.QtWidgets.QWidget, int, int, int, int, PySide2.QtCore.Qt.Alignment=Default(Qt.Alignment))
PySide2.QtWidgets.QGridLayout.addWidget(PySide2.QtWidgets.QWidget)

最佳答案

通过将 PyQt5 模块添加到规范文件中的排除列表中解决了此问题。当尝试在一个文件夹模式下创建独立文件时,我发现添加了 PyQt5 文件以及 PySide2 文件,这些文件会中断并导致此问题发生。

关于python - 使用错误的参数类型调用 PySide2.QtWidgets.QxxxxLayout.addWidget,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56304203/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com