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!