在Pygtk和Glade使用Gtkbuilder

   最近开始学习python的GUI,选择了Pygtk,试着用Glade设计界面,项目文件采用Gtkbuilder格式,网上的教程大部分是使用Libglade,所以用xml方式读取.glade文件:

        wTree = gtk.glade.XML(gladefile)
    运行时会提示:RuntimeError: could not create GladeXML object

   这是由于Gtkbuilder必须使用自己的方式初始化,而不能使用Libglade的方式:

        #初始化 gtkbuilder
        builder = gtk.Builder()

        #设置Glade文件
        builder.add_from_file("myfirst.glade")
        #连接glade文件中的signals
        builder.connect_signals(self)  

   下来就可以获取glade中的gui对象了

        #获取主窗口
        self.window=builder.get_object("mainwindow")
        #显示窗口
       self.window.show()

   注意glade中定义的hander,必须在程序中存在否则会出现如下错误:

       RuntimeWarning: missing handler ‘gtk_main_quit‘
    我这里是gtk_main_quit,实现了程序退出,如下:

 

      def gtk_main_quit(self,b):
            gtk.main_quit()

在Pygtk和Glade使用Gtkbuilder

上一篇:redis安装windows+64位


下一篇:[windos操作]--Windows 10的中文用户名怎么改成英文