0

嘿,

太好了,我用 QTDesigner 创建了 MainWindow.ui 文件。然后我使用以下命令将此 gui 导入到我的 .py 文件中:

form_class = uic.loadUiType("ess_project.ui")[0]  

如果我用 pyuic4 编译这个 .ui 文件有什么区别?(每次我编译我的 .ui 文件时,我都会收到以下错误:

RuntimeError: the sip module implements API v11.0 to v11.1 but the PyQt4.QtCore module requires API v10.1

MainWindow 创建第一个窗口,其中放置了所有按钮等。

class MainWindow(QtGui.QMainWindow, form_class):
    def __init__(self, parent=None):
        QtGui.QMainWindow.__init__(self, parent)
        PlotWindow.__init__(self)
        self.setupUi(self)
        self.pb_send.clicked.connect(self.pb_send_clicked)
        self.pb_open.clicked.connect(self.pb_open_clicked)
        self.pb_exit.clicked.connect(self.pb_exit_clicked)
        self.comboBox.currentIndexChanged.connect(self.combo_box_changed)

此外,我还有一个名为“PlotWindow”的第二类。这个类看起来像这样:

class PlotWindow(QtGui.QMainWindow):
    def __init__(self):
        QtGui.QMainWindow.__init__(self)
        self.w = QtGui.QMainWindow()
        self.cw = pg.GraphicsLayoutWidget()
        self.w.show()
        self.w.resize(900,600)
        self.w.setCentralWidget(self.cw)
        self.w.setWindowTitle('pyqtgraph: G-CODE')
        self.p = self.cw.addPlot(row=0, col=0)

现在如您所见,PloWindow - 类创建了第二个窗口。

我如何将 pg.GraphicsLayoutWidget() 实现到 MainWindow - 类中?

不知道这是否可以帮助你?!?:

def main():
    app = QtGui.QApplication([])
    myWindow = MainWindow(None)
    myWindow.show()
    app.exec_()

if __name__ == '__main__':
    main()

我正在使用 python3 !随时发表评论:)谢谢!

4

1 回答 1

1

要将任何 pyqtgraph 小部件放置在您的应用程序中,您需要添加一个占位符小部件并将其“提升”到您想要的 pg 类。请参阅:http: //www.pyqtgraph.org/documentation/how_to_use.html#embedding-widgets-inside-pyqt-applications

于 2014-06-28T20:12:04.573 回答