问题描述
def __init__(self):
# Initialise main program with GUI
super(MainWindow,self).__init__()
uic.loadUi('fg_control_gui_2.ui',self)
在该 ui 文件中,我定义了一个 QGraphicsView,它在 GUI 的 .py 版本中如下所示:
self.ch1_oszi_view = QtWidgets.QGraphicsView(self.centralwidget)
self.ch1_oszi_view.setGeometry(QtCore.QRect(10,450,361,261))
self.ch1_oszi_view.setobjectName("ch1_oszi_view")
现在我想添加一个 QGraphicsScene 作为画布,这样我就可以在我的 GUI 中显示一个应该是这样完成的图:
scene = QtWidgets.QGraphicsScene()
view = QtWidgets.QGraphicsView(scene)
我现在的问题是,如何像在上一个示例的第二行代码中那样将场景交给先前定义的 QGraphicsView ?
解决方法
您必须使用 setScene()
的 QGraphicsView
方法:
scene = QtWidgets.QGraphicsScene()
self.ch1_oszi_view.setScene(scene)