Problema com Pygtk ao escrever em uma Label

Iniciado por leandro.miranda, 14 de Maio de 2012, 12:10

tópico anterior - próximo tópico

leandro.miranda

Estou com problema ao tentar escrever em uma label.


#!/usr/local/env python
# -*- coding: latin-1 -*-
import sys
import gtk
import pygtk

def gerar_agora(self, *args):
Resultado = gtk.Label("Resultado")
gtk.label.set_text(Resultado,"aaaaaa")
 
def sair_programa(self):
gtk.main_quit()

class form(gtk.Window):
def __init__(form1):

   gtk.Window.__init__(form1)
   form1.connect("delete_event", gtk.main_quit)
   form1.set_size_request(304,87)
   form1.set_border_width(1)
   form1.set_title(u"Mega Sena Gerador")
   form1.set_resizable(True)

   layoutform1 = gtk.Layout()
   form1.layoutform1 = layoutform1
   form1.add(layoutform1)

   form1.Resultado = gtk.Label()
   form1.Resultado.set_markup(u"Que tal gerar um jogo?")
   form1.layoutform1.put(form1.Resultado, 0,0)
   

   form1.gerar = gtk.Button(u"Gerar")
   form1.gerar.set_size_request(75,25)
   form1.layoutform1.put(form1.gerar, 0,60)
   form1.gerar.connect("clicked", gerar_agora)
   
     
   form1.sair = gtk.Button(u"Sair")
   form1.sair.set_size_request(75,25)
   form1.layoutform1.put(form1.sair, 227,60)
   form1.sair.connect("clicked", sair_programa)

if __name__ == "__main__":
win = form()
win.show_all()
gtk.main()


O Erro que dá é este:


AttributeError: 'module' object has no attribute 'label'
File "C:\Users\leo\Desktop\mega\teste.py", line 47, in <module>
  gtk.main()
File "C:\Users\leo\Desktop\mega\teste.py", line 9, in gerar_agora
  gtk.label.set_text(Resultado,"aaaaaa")
Obrigado,

Ass. Leandro Miranda

irtigor

O modulo gtk não tem "label" (possui "Label").

leandro.miranda

Citação de: irtigor online 14 de Maio de 2012, 13:35
O modulo gtk não tem "label" (possui "Label").

É eu tentei tantas coisas que acabei colocando l minusculo. Mas um amigo no irc me ajudou a resolver, reescrevendo praticamente todo o código. Segue abaixo:



#!/usr/local/env python
# -*- coding: latin-1 -*-
import sys
import gtk
import pygtk


 
def sair_programa(self):
gtk.main_quit()

class form(gtk.Window):
    def __init__(self):

        gtk.Window.__init__(self)
        self.connect("delete_event", gtk.main_quit)
        self.set_size_request(304,87)
        self.set_border_width(1)
        self.set_title(u"Mega Sena Gerador")
        self.set_resizable(True)
   
        layoutself = gtk.Layout()
        self.layoutself = layoutself
        self.add(layoutself)
   
        self.Resultado = gtk.Label()
        self.Resultado.set_markup(u"Que tal gerar um jogo?")
        self.layoutself.put(self.Resultado, 0,0)
       
   
        self.gerar = gtk.Button(u"Gerar")
        self.gerar.set_size_request(75,25)
        self.layoutself.put(self.gerar, 0,60)
        self.gerar.connect("clicked", self.gerar_agora)
       
         
        self.sair = gtk.Button(u"Sair")
        self.sair.set_size_request(75,25)
        self.layoutself.put(self.sair, 227,60)
        self.sair.connect("clicked", sair_programa)

    def gerar_agora(self, *args):
        gtk.Label.set_text(self.Resultado,"aaaaaa")

if __name__ == "__main__":
win = form()
win.show_all()
gtk.main()
Obrigado,

Ass. Leandro Miranda