Criando uma simples janela com pygtk

É duro querer ou precisar fazer alguma coisa e não saber nem como começar; quando a gente não faz nem idéia de como a coisa pode ser feita.

Neste artigo nós vamos fazer uma simples janela vazia com pygtk para ultrapassar essa barreira do “não tenho nem idéia de como é”.

Uma janela em gtk é criada instanciando a classe gtk.Window():
janela=gtk.Window()

A janela tem que ser exibida com o método Show():
janela.Show()

Vamos ver então um código exemplo. Salve o código abaixo com um nome sugestivo, algo como janela_gtk.py, e execute com python janela_gtk.py :

#!/usr/bin/env python

import pygtk
import gtk

win=gtk.Window()
win.set_title('Titulo da Janela')

win.set_size_request(400,400)
win.connect("destroy",gtk.main_quit)

win.show()
gtk.main()

Janela exemplo

As linhas
import pygtk
import gtk

simplesmente importam os módulos para que seu programa python possa utilizar as classes gtk.

Nas linhas
win=gtk.Window()
win.set_title('Titulo da Janela')

uma janela gtk é criada, e um título é atribuído a ela.

Em win.set_size_request(400,400) definimos o tamanho(altura, largura) da janela.

Agora vem uma coisa interessante. Na linha abaixo conectamos um determinado sinal a uma funçao:
win.connect("destroy",gtk.main_quit)
Sinais são coisas que você vai muito usar ao trabalhar com pygtk. Aqui o sinal “destroy” é conectado ao método main_quit do gtk. Grosso modo, significa que, quando você fechar a janela, o método será chamado e o loop (veja abaixo) que mantém o programa em funcionamento será encerrado.

A linha abaixo é um mistério:
win.show()
Dou um pirulito a quem descobrir para que serve.

Finalmente,
gtk.main()
chama o loop principal, que vai fazer o gtk ficar esperando por eventos (os sinais) que fazem a mágica de um programa com interface gráfica.

5 Respostas para “Criando uma simples janela com pygtk”

  1. Obal!

    Legal o seu post. Vou dar uma olhada em todo o material de python do seu blog. :P

    Valeu.

  2. Muito bom o artigo, direto ao ponto, parabéns!

  3. [...] Criando uma simples janela com pygtk Criando uma simples janela em pygtk – parte II [...]

  4. [...] Criando uma simples janela em PyGTK Criando uma simples janela em PyGTK – parte II DrawingArea – Desenhando na tela com PyGTK Orientação a Objetos com python Orientação a Objetos – Herança [...]

  5. Show de bola, parabéns.

Deixe uma resposta