PyGTK および GTK Builder ウィンドウに問題があります。これが私のコードの簡略版です。
class GUI:
def __init__(self,parent):
builder_file = "./ui/window.builder"
self.builder = gtk.Builder()
self.builder.add_from_file(builder_file)
self.window = self.builder.get_object('main')
self.builder.connect_signals( self )
self.populate_window()
self.window.show()
def populate_window(self):
hbox = self.builder.get_object('hbox')
hbox.pack_start( somewidgets )
def on_destroy(self):
self.window.destroy()
gtk ビルダー ファイルには、水平方向のパッキング ボックスと破棄へのシグナルを備えたトップレベル ウィンドウが含まれているだけです。これは機能しているように見え、ウィンドウは正常に作成され、取り込まれますが、他のウィジェットで取り込まれたウィンドウを破棄しようとすると、python segfaults が発生します。
これは、ビルダーファイルにない新しいウィジェットをパックする際の問題であると考えているため、pygtk はそれらを破棄する方法を知りませんが、よくわかりません。
助けてくれてありがとう。