1. Criando a janela principal da aplicação
Hoje vamos embarcar em uma jornada emocionante pelo mundo das interfaces gráficas com a biblioteca Tkinter. Após essa aula, seu PC não será apenas uma caixa de ferro, mas um verdadeiro mago, que não só sabe calcular, mas também mostrar os resultados para o usuário na tela. Então, apertem os cintos e bora construir nossa primeira janela básica de aplicação!
Vamos começar criando a janela principal da nossa aplicação. No Tkinter isso é bem simples. A gente vai usar a função Tk()
para criar uma instância da janela principal — é tipo o tradicional "Hello, World!" no mundo de GUI.
import tkinter as tk
# Criamos uma instância da aplicação
root = tk.Tk()
# Configuramos o título da janela
root.title("Minha primeira aplicação")
# Iniciamos o loop principal
root.mainloop()
O que está rolando aqui?
- Importar Tkinter: Começamos fazendo o import da biblioteca
tkinter
. Por comodidade, importamos ela comotk
(porque nós, programadores, simplesmente amamos abreviações). - Criar janela: Criamos o objeto
root
, que representa a janela principal da aplicação. Imagine que essa janela é o "coração" dela, sem isso nosso app simplesmente não existe. - Título da janela: Usando o método
title()
, configuramos o título da nossa janela, para que os usuários saibam do que se trata. Nesse caso, chamamos de "Minha primeira aplicação". - Loop principal (
mainloop()
): Esse é o elemento chave que inicia o processamento de eventos na aplicação. Enquanto esse loop está rodando, nossa janela continua visível, esperando a interação do usuário.
Guia passo a passo
-
Criar a janela principal: cada interface começa com a criação da janela principal.
root = tk.Tk() root.title("Janela Básica")
Uhul! Você acabou de trazer uma janela para sua vida. Espero que tenha cortinas!
-
Configurar os parâmetros da janela: vamos adicionar um pouco de personalização.
root.geometry("800x600") # Largura x Altura root.iconbitmap('icon.ico') # Você pode usar seu próprio arquivo de ícone
-
Loop principal da aplicação: para a sua janela não desaparecer assim que aparecer, iniciamos o loop principal.
root.mainloop()
Loop principal da aplicação
Agora que temos uma janela, vamos falar sobre o loop principal mainloop()
. Ele age como um DJ invisível na sua festa — enquanto ele está tocando, tudo acontece como planejado.
O loop principal permanece sempre alerta, mantendo a aplicação funcionando e respondendo às ações do usuário,
como cliques do mouse ou pressionamentos de teclas.
Sem esse loop sua aplicação simplesmente mostraria uma janela vazia e encerraria. Então, não esqueça de incluir ele no final de cada um dos seus scripts Tkinter!
2. Conhecendo os widgets
O Tkinter oferece vários widgets, cada um com uma função única. Bora conhecer alguns deles.
Principais widgets Tkinter
- Janela (Window): a superfície principal onde todos os outros widgets vivem.
- Botão (Button): elemento interativo que responde a cliques.
- Campo de entrada (Entry): campo de texto para entrada de uma única linha de texto.
- Rótulo (Label): usado para exibir texto ou imagens.
- Caixa de texto (Text): para entrada e exibição de texto em múltiplas linhas.
Exemplos de uso de widgets
Aqui vai um exemplo simples que mostra como você pode criar uma janela com um botão e um rótulo:
import tkinter as tk
def say_hello():
label.config(text="Olá, mundo!")
root = tk.Tk()
root.title("Minha primeira aplicação")
label = tk.Label(root, text="Clique no botão")
label.pack(pady=10)
button = tk.Button(root, text="Clique em mim", command=say_hello)
button.pack(pady=5)
root.mainloop()
Depois de executar esse código, você verá uma janela com um rótulo e um botão. Clique no botão — e o rótulo vai cumprimentar o mundo!
3. Adicionando widgets à janela
Agora que temos nossa janela incrível (sim, por enquanto é só isso), bora adicionar alguns widgets. Widgets são elementos da interface do usuário, como botões, rótulos, campos de texto, etc. Vamos começar com algo básico: criar um botão e um rótulo.
# Importamos a biblioteca tkinter
import tkinter as tk
# Criamos a janela principal da aplicação
root = tk.Tk()
root.title("Minha primeira aplicação")
# Criamos um rótulo e colocamos ele na janela
label = tk.Label(root, text="Olá, usuário! Bem-vindo ao meu primeiro GUI.")
label.pack() # Usamos o método pack para posicionar o widget
# Criamos um botão e colocamos ele na janela
button = tk.Button(root, text="Clique em mim!", command=lambda: print("Botão clicado!"))
button.pack()
# Iniciamos o loop principal
root.mainloop()
Explicações
-
Rótulo (Label): Criamos um rótulo com o texto "Olá, usuário! Bem-vindo ao meu primeiro GUI." usando
Label()
. O métodopack()
no fim é uma maneira simples de posicionar o widget na tela. -
Botão (Button): O botão foi criado com o texto "Clique em mim!". Também passamos o parâmetro
command
, que indica qual função chamar quando o botão for pressionado. Aqui o comando chamalambda: print("Botão clicado!")
, então, ao clicar, você verá uma mensagem no console.
Com isso, não só criamos uma janela básica, mas também a tornamos interativa! Dá pra dizer que passamos de uma simples janela para um pequeno "aplicativo". Esse é só o começo — tem muito mais coisa legal vindo por aí!
Espero que você tenha curtido essa introdução ao mundo do Tkinter. Lembre-se, GUI é a sua chance de mostrar ao mundo sua habilidade como programador de forma visual. Na próxima aula a gente vai ver como adicionar mais botões e campos de entrada, então se prepare pra interfaces ainda mais interativas!
GO TO FULL VERSION