2011-07-14 66 views
2

我想在Qt4窗口中嵌入一個VTK5可視化文件,但沒有多少運氣。下面的代碼不會在我的Mac(10.6,Python 2.7版)工作:VTK與Qt一起工作的問題

from PyQt4 import QtGui 
from vtk.qt4 import QVTKRenderWindowInteractor 
import sys 

class Window(QVTKRenderWindowInteractor.QVTKRenderWindowInteractor): 
    def __init__(self): 
     QVTKRenderWindowInteractor.QVTKRenderWindowInteractor.__init__(self,None) 

if __name__=='__main__': 
    app = QtGui.QApplication(sys.argv) 
    w = Window() 
    w.show() 
    sys.exit(app.exec_()) 

當我嘗試運行代碼的錯誤是:

X Error of failed request: BadWindow (invalid Window parameter) 
    Major opcode of failed request: 2 (X_ChangeWindowAttributes) 
    Resource id in failed request: 0x1a310140 
    Serial number of failed request: 7 
    Current serial number in output stream: 9 

沒有人有任何想法可能是什麼繼續?請注意,如果我切換到

class ConeWindow(QtGui.QMainWindow): 
    def __init__(self): 
     QtGui.QMainWindow.__init__(self,None) 

我得到一個小的空窗口,如預期彈出。

+0

除了告訴你,第一個代碼示例爲我在Windows和Linux下工作,我不能幫助很多。錯誤消息似乎與X有關...其他OpenGL/X窗口應用程序是否正常工作? – Jeremiah

回答

2

我終於明白了,所以我們把解決方案放在這裏,以防其他人有用。我已經安裝VTK5有:

sudo port install vtk5 +python27 

,但我需要包括qt4_mac變種。以下工作:

sudo port install vtk5 +python27 +qt4_mac