Faça a janela “About” no glade [closed]

3

Eu tentei criar a janela about como About MATE no Mate DE no Ubuntu 14.04, e este é o arquivo .py que fiz:

 #!/usr/bin/env python

 import sys
 try:
     import pygtk
     pygtk.require("2.0")
 except:
     pass
 try:
     import gtk
     import gtk.glade
 except:
      sys.exit(1)

 class aboutGTK:
          """About"""

          def __init__(self):

               #Set the Glade file
               self.gladefile = "about.glade"  
                     self.wTree = gtk.glade.XML(self.gladefile) 

               #Create our dictionay and connect it
               dic = { "on_btnabout_clicked" : self.btnabout_clicked,
                   "on_MainWindow_destroy" : gtk.main_quit }
              self.wTree.signal_autoconnect(dic)

          def btnabout_clicked(self, widget):
              print "About"


 if __name__ == "__main__":
     hwg = aboutGTK()
     gtk.main()

mas quando eu executo o about.py é isso que eu recebi:

$ python about.py 

(about.py:9950): libglade-WARNING **: Expected <glade-interface>.      Got <interface>.

(about.py:9950): libglade-WARNING **: did not finish in  PARSER_FINISH state
Traceback (most recent call last):
File "about.py", line 34, in <module>
  hwg = aboutGTK()
File "about.py", line 22, in __init__
  self.wTree = gtk.glade.XML(self.gladefile) 
RuntimeError: could not create GladeXML object

alguma ajuda por favor?

    
por Marko Blanka 15.12.2015 / 11:53

1 resposta

2

Você precisa usar o GTK3 para carregar um arquivo criado com o Glade 3.x. Como o Glade 2.x não está disponível no Ubuntu, a mudança para o GTK3 é a sua melhor opção.

Para usar o GTK3 no Python, você precisa mudar do PyGTK para PyGObject . Veja o Tutorial do Python GTK + 3 para saber como usá-lo.

    
por Florian Diesch 15.12.2015 / 12:53

Tags