MP0*_*MP0 12 pygtk glade pygobject gtk3
我正在使用迁移指南(将GTK2移植到GTK3)将脚本转换为使用Gtk3 .我把我改成import pygtk了from gi.repository import Gtk等等......
我被困了,因为glade模块是从模块gtk加载的:
import gtk
import gtk.glade
Run Code Online (Sandbox Code Playgroud)
但是现在再也没办法了.
请注意,我只需要替换gtk.glade.XML()...
MP0*_*MP0 14
好吧,解决方案非常明显,在调用Gtk.Builder()一个需要转换旧glade接口的gtk-builder-convert命令后,才能获得正确版本的接口文件.
$ gtk-builder-convert myui.glade myui.ui
Run Code Online (Sandbox Code Playgroud)
然后,在python脚本中:
from gi.repository import Gtk
builder = Gtk.Builder()
builder.add_from_file("myui.ui")
Run Code Online (Sandbox Code Playgroud)
感谢Riccardo.