Executando verificação de segurança...
8

Como criar interfaces gráficas (GUI) com Python

Acho que boa parte dos programadores sabem pelo menos o básico do Python por ser uma linguagem simples e popular. Porém, muitos nem sabem as coisas incríveis que são possíveis de fazer com ela.

Seja bem vindo ao post, e hoje vou ensinar a como você pode criar interfaces gráficas de usuário (GUI - Graphic User Interface) para os seus programas em Python e com Python.

Vamos começar!

 

Existem diversas opções de frameworks, podemos ver alguns a seguir:
WxWidgets;
Tkinter;
Kivy;
PyGTK;
PySide;
QT.

Dentre esses, nós vamos usar o Tkinter por ele já vir instalado por padrão no Python e pela facilidade de uso.

 


Conceitos de GUI

  • Container – É uma analogia a um container físico e tem como objetivo organizar e guardar objetos. Da mesma forma este conceito serve para um container em interface. Nesse caso, os objetos que estamos armazenando são os widgets;
  • Widget – É um componente qualquer na tela, que pode ser um botão, um ícone, uma caixa de texto, etc.;
  • Event Handler – São tratadores de eventos. Por exemplo, ao clicarmos em um botão para executar uma ação, uma rotina é executada. Essa rotina é chamada de event handler;
  • Event Loop – O event loop verifica constantemente se outro evento foi acionado. Caso a hipótese seja verdadeira, ele irá executar a rotina correspondente.

 


Primeiro código no Tkinter ("Hello world")

Para acompanhar esse tutorial, é necessário que você tenha conhecimento em Python, já tenha ele instalado, além de algum editor de código.

# Para importar o Tkinter para o seu projeto basta digitar
From tkinter import *

# Agora, para criar uma nova instância, crie uma variável 
# com o nome "janela" e atribua a ela a instância usando "Tk()":
janela = Tk()

# Para adicionar algum texto, crie o Label, vincule ele a 
# variável janela e adicione o texto de seu interesse. 
# (Não esqueça de adicionar o gerenciador de layout)
Label(janela, text="Hello world").pack()

# E mande a aplicação ser executada
janela.mainloop() 

E execute o arquivo Python.



Viu como é bem simples? Uma nova janela se abriu com exatamente o texto que você fez.

O objetivo desse Post não é exatamente ensinar como criar interfaces, até porque ficaria bem longo, mas sim mostrar como é bem fácil.

Se você quiser se aprofundar mais no Tkinter, deixo aqui, por recomendação própria, um curso gratuito do canal eXcript no Youtube. Lá ele ensina a usar todos os métodos, widgets, personalizar tudo, e várias outras coisas. (Clique aqui para acessar o curso)

Além disso, você pode conferir a documentação oficial do Tkinter (já em português):
https://docs.python.org/pt-br/3/library/tk.html



Obrigado por ler até aqui, em um futuro post eu ensinarei como criar arquivos executáveis com Python, e aí você conseguirá fazer um programa completo.

Quaisquer sugestões ou dúvidas, você pode deixar aqui nos comentários, ou mandar uma mensagem no meu instagram.

Até o próximo post!

Carregando publicação patrocinada...
1

Salve! Eu não sei se minha instalação de Python3 está muito "pelada".
Estou usando WSL2.
Eaí o módulo só ficou disponível depois disso:
apt install python3-tk
pip3 install tk interface
Cheers!

1

Sensacional Gabriel! Uma sugestão, você pode formatar o código com a sintaxe do python, por exemplo:

# Para importar o Tkinter para o seu projeto basta digitar
From tkinter import *

# Agora, para criar uma nova instância, crie uma variável
# com o nome "janela" e atribua a ela a instância usando "Tk()"
janela = Tk ()

# Para adicionar algum texto, crie o Label, vincule ele a
# variável janela e adicione o texto de seu interesse.
# (Não esqueça de adicionar o gerenciador de layout)
Label(janela, text="Hello world").pack()

# E mande a aplicação ser executada
janela.mainloop()

Para isso, basta declarar a linguagem no início do bloco de código: ```python

2