Python 如何将pyside QGraphicscene添加到BoxLayout
我有一个Python 如何将pyside QGraphicscene添加到BoxLayout,python,pyside2,Python,Pyside2,我有一个PySide2.qtwidts.QVBoxLayout和一个PySide2.qtwidts.qgraphicscene,我想把graphicscene放在布局中。以下是我代码的一部分: self.cn_graph = QtWidgets.QGraphicsScene() [...] self.ly_bottom = QtWidgets.QVBoxLayout() [...] self.ly_bottom.addWidget(self.cn_graph) 但我得到了这个错误: TypeE
PySide2.qtwidts.QVBoxLayout
和一个PySide2.qtwidts.qgraphicscene
,我想把graphicscene
放在布局中。以下是我代码的一部分:
self.cn_graph = QtWidgets.QGraphicsScene()
[...]
self.ly_bottom = QtWidgets.QVBoxLayout()
[...]
self.ly_bottom.addWidget(self.cn_graph)
但我得到了这个错误:
TypeError: 'PySide2.QtWidgets.QBoxLayout.addWidget' called with wrong argument types:
PySide2.QtWidgets.QBoxLayout.addWidget(QGraphicsScene)
Supported signatures:
PySide2.QtWidgets.QBoxLayout.addWidget(PySide2.QtWidgets.QWidget, int = 0,
PySide2.QtCore.Qt.Alignment = Default(Qt.Alignment))
PySide2.QtWidgets.QBoxLayout.addWidget(PySide2.QtWidgets.QWidget)
我不知道是否有可能在
boxlayout
中使用graphicscene
,因此欢迎任何想法。qgraphicscene不是一个小部件,它不是一个视觉元素,而是一个绘画处理程序,您应该使用QGraphicsView:
self.cn_scene_graph = QtWidgets.QGraphicsScene()
self.cn_view_graph = QtWidgets.QGraphicsView(self.cn_scene_graph)
# ...
self.ly_bottom = QtWidgets.QVBoxLayout()
# ...
self.ly_bottom.addWidget(self.cn_view_graph)