Article image
Carlos Soares
Carlos Soares15/05/2024 15:29
Compartilhe

O que é e como Utilizar a Biblioteca Tkinter em Python

  • #Python

Introdução à Biblioteca Tkinter em Python

Tkinter é a biblioteca padrão do Python para criar interfaces gráficas de usuário (GUI). Com Tkinter, os desenvolvedores podem criar janelas, botões, caixas de entrada, menus e outros componentes gráficos de forma simples e eficiente.

Neste artigo, vou apresentar os fundamentos do Tkinter e apresentar exemplos de código para criar interfaces gráficas básicas.

Instalação do Tkinter

Tkinter vem pré-instalado com a maioria das distribuições do Python e geralmente não é necessário instalar nenhum componente. Para verificar se você tem o Tkinter instalado, você pode executar o seguinte comando no terminal ou prompt de comando:

python -m tkinter 

Se Tkinter estiver instalado, uma janela gráfica simples será exibida.

Estrutura Básica de um Programa Tkinter

Um programa Tkinter geralmente segue esta estrutura básica:

  1. Importar o Módulo Tkinter: Importe o módulo Tkinter no seu programa usando a declaração import tkinter as tk.
  2. Criar uma Janela: Crie uma janela principal usando Tk().
  3. Criar Componentes Gráficos: Adicione botões, caixas de entrada, rótulos e outros componentes à janela.
  4. Organizar os Componentes: Use gerenciadores de layout como grid(), pack() ou place() para organizar os componentes dentro da janela.
  5. Executar o Loop Principal: Chame o método mainloop() da janela para iniciar o loop principal do programa Tkinter.

image

Exemplo 1: Criando uma Janela Simples

import tkinter as tk

# Criar uma janela
janela = tk.Tk()
janela.title("Minha Primeira Janela")

# Executar o loop principal
janela.mainloop() 

Neste exemplo, criamos uma janela simples com o título "Minha Primeira Janela".

Exemplo 2: Adicionando um Rótulo

import tkinter as tk

# Criar uma janela
janela = tk.Tk()
janela.title("Rótulo Simples")

# Adicionar um rótulo
rotulo = tk.Label(janela, text="Olá, Tkinter!")
rotulo.pack()

# Executar o loop principal
janela.mainloop()

Neste exemplo, adicionamos um rótulo com o texto "Olá, Tkinter!" à janela.

Exemplo 3: Adicionando um Botão

import tkinter as tk

# Função para exibir uma mensagem quando o botão for clicado
def exibir_mensagem():
  print("O botão foi clicado!")

# Criar uma janela
janela = tk.Tk()
janela.title("Botão Simples")

# Adicionar um botão
botao = tk.Button(janela, text="Clique Aqui", command=exibir_mensagem)
botao.pack()

# Executar o loop principal
janela.mainloop()

Neste exemplo, adicionamos um botão à janela e definimos uma função para ser executada quando o botão é clicado.

Exemplo 4: Utilizando o método grid()

O método grid() é um dos gerenciadores de layout disponíveis na biblioteca Tkinter, posicionando os widgets em uma janela. Ele organiza os widgets em uma grade, onde cada widget é colocado em uma célula específica da grade, identificada por uma linha e uma coluna.

Especificar a posição do widget:

  • Para posicionar um widget usando grid(), você precisa especificar em qual linha e coluna da grade ele deve ser colocado. Isso é feito passando os argumentos row e column para o método grid().

Espaçamento interno:

  • Os argumentos padx e pady no método grid() permitem especificar o espaçamento interno em x e y, respectivamente, ao redor do widget.

Redimensionamento do widget:

  • Por padrão, os widgets se ajustam automaticamente ao seu conteúdo. No entanto, você pode controlar o redimensionamento de um widget usando os argumentos sticky, columnspan e rowspan no método grid():
  • O argumento sticky controla a direção na qual o widget se expande para preencher o espaço da célula. Por exemplo, sticky="w" expande o widget para preencher a célula na direção oeste (esquerda).
  • O argumento columnspan permite que o widget se estenda por várias colunas.
  • O argumento rowspan permite que o widget se estenda por várias linhas.

Ordenação de widgets:

  • A ordem na qual os widgets são colocados no método grid() determina a ordem de sobreposição. Widgets colocados posteriormente podem cobrir widgets colocados anteriormente.

Usar o grid() pode ser um pouco mais complexo em comparação com pack(), mas oferece mais controle sobre o posicionamento dos widgets em uma janela. É uma escolha popular para layouts mais complexos e precisos em aplicações Tkinter.

import tkinter as tk

# Função para exibir uma mensagem quando o botão for clicado
def exibir_mensagem():
  print("O botão foi clicado!")

# Criar uma janela
janela = tk.Tk()
janela.title("Posicionamento com Grid")

# Adicionar um rótulo
rotulo = tk.Label(janela, text="Olá, Tkinter!")
rotulo.grid(row=0, column=0, padx=10, pady=10)  # Posicionado na primeira linha e primeira coluna

# Adicionar um botão
botao = tk.Button(janela, text="Clique Aqui", command=exibir_mensagem)
botao.grid(row=1, column=0, padx=10, pady=10)  # Posicionado na segunda linha e primeira coluna

# Executar o loop principal
janela.mainloop()

Neste exemplo, estamos usando o gerenciador de layout grid() para posicionar o rótulo e o botão na janela. O método grid() aceita os argumentos row e column para especificar a posição da célula na grade da janela. O argumento padx e pady especifica o espaçamento interno em x e y, respectivamente, ao redor do widget.

Esses são apenas alguns exemplos simples para começar com Tkinter em seus projetos python. Com o tempo, você pode explorar recursos mais avançados, como caixas de entrada, menus, imagens e muito mais.

Espero ter apresentado de forma simples o uso da bilbioteca Tkinter para você começar a incorpora-lo em seus projetos.

Segue a documentação da biblioteca: https://docs.python.org/3/library/tk.html

Vamos Disseminar os Conhecimentos e Transbordar Tudo o que Aprendemos!

Segue o Link do meu LinkedIn: https://www.linkedin.com/in/carlos-cgs/

Segue o Link do meu GitHub: https://github.com/Carlos-CGS

Compartilhe
Comentários (0)