O objeto Image serve (óbvio...) para projetar imagens na tela. Essas imagens podem ser arquivos: .PNG, .JPG, .GIF, .TIFF e alguns outros.
Um objeto Image pode ser colocado dentro de outros objetos, como um Button, por exemplo (o que mostramos no exercício) ou apenas ser projetado na tela.
Um objeto Image pode ser criado com, por exemplo:
self.img = gtk.Image()
Para adicionar cada um desses objetos à tela do XO, numa dada posição, usamos normalmente um objeto Fixed (visto em aula anterior):
Os métodos de Image são:
show()
hide()
destroy()
set_from_file( arquivo-com-seu-path)
Claro que o código a seguir, do exercício, tem que vir dentro de uma Classe etc. etc. como já mostramos.
#...
def __init__(self):
Activity.__init__(self)
#Definindo o tamanho das letras
gtk.settings_get_default().props.gtk_xft_dpi *= 3
#Criando base para layout
self.fix = gtk.Fixed()
self.add(self.fix)
self.fix.show()
#Criando Label
self.lb = gtk.Label()
self.fix.put(self.lb, 600,200)
self.lb.show()
#Criando Image
self.img = gtk.Image()
#Usamos todo o path do arquivo
self.img.set_from_file("/usr/share/activities/hellopac.activity/cat.png")
#Criando Button
self.bt = gtk.Button()
self.fix.put(self.bt, 600,400)
#Esse método não aparece no "reference" do Button
self.bt.add(self.img)
self.img.show()
self.bt.show()
self.bt.connect("clicked",self.apertado, "MIAUU!")
#Outro Image
self.img2 = gtk.Image()
self.img2.set_from_file("/usr/share/activities/hellopac.activity/bird.png")
self.fix.put(self.img2, 200,200)
self.img2.show()
def apertado(self,widget,data=None):
self.lb.set_text(data)
DICA: Usamos, no exercício, imagens que copiamos da aplicação TamTam para o diretório do pacote.
LIÇÂO ANTERIOR PRÓXIMA LIÇÂO ÍNDICE HOMEPAGE