2014-06-28 82 views
0

hy,添加pyqtgraph(繪圖)到QApplication

soooo,我用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 

的主窗口創建的第一個窗口,在這裏所有的按鈕等等都放在

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 !!! 感覺免費評論:) 謝謝!

+0

上面的RuntimeError看起來像您的pyqt安裝問題。 – Luke

+0

好的,這是有道理的^^如果我安裝一個新的SIP版本是什麼? 舊的sip版本會被刪除嗎?或者我如何告訴我的程序使用其他sip版本? – InvAdErZz

+0

這一切都取決於您的操作系統和安裝方法。我會建議只卸載sip + pyqt,並嘗試通過不同的方法重新安裝,直到找到可用的東西。 – Luke

回答