Neste artigo, vamos percorrer as 5 melhores bibliotecas GUI Python que pode utilizar nos seus projectos. Continue a ler para saber mais sobre elas.
Tabela de Conteúdos
O que é uma GUI?
Uma GUI ou uma interface gráfica de utilizador é um ambiente interactivo para obter respostas dos utilizadores em várias situações, tais como formulários, documentos, testes, etc. Fornece ao utilizador um bom ecrã interactivo do que uma interface tradicional de linha de comando (CLI).
Lista das melhores bibliotecas GUI Python
Vejamos as melhores bibliotecas GUI para Python.
1. PyQT5
PyQT5 é uma estrutura gráfica de interface de utilizador (GUI) para Python. É muito popular entre os desenvolvedores e a GUI pode ser criada por codificação ou por um designer QT. Uma estrutura de desenvolvimento QT é uma estrutura visual que permite arrastar e largar widgets para construir interfaces de utilizador.
É um software livre, de código aberto, e é implementado para uma estrutura de desenvolvimento de aplicações de plataforma cruzada. É utilizado em Windows, Mac, Android, Linux e Raspberry PI.
Para a instalação do PyQT5 , pode usar o seguinte comando :
pip install pyqt5
Um código simples é demonstrado aqui:
from PyQt5.QtWidgets import QApplication, QMainWindowimport sysclass Window(QMainWindow): def __init__(self): super().__init__() self.setGeometry(300, 300, 600, 400) self.setWindowTitle("PyQt5 window") self.show()app = QApplication(sys.argv)window = Window()sys.exit(app.exec_())
A saída do código acima é a seguinte:
ScienceSoft’s team of Python developers highlights the benefits of using PyQt:
PyQt é um conjunto maduro de ligações Python ao Qt para o desenvolvimento de aplicações desktop em plataforma cruzada. Oferece uma rica selecção de widgets integrados e ferramentas para a criação de widgets personalizados para dar forma a GUIs sofisticadas, bem como um robusto suporte de base de dados SQL para ligar e interagir com bases de dados.
2. Python Tkinter
Outra estrutura GUI é chamada Tkinter. Tkinter é uma das mais populares bibliotecas GUI Python para o desenvolvimento de aplicações desktop. É uma combinação da estrutura GUI padrão TK e python.
Tkinter fornece diversos widgets tais como etiquetas, botões, caixas de texto, caixas de verificação que são utilizadas numa aplicação gráfica de interface de utilizador.
Os widgets de controlo de botões são utilizados para exibir e desenvolver aplicações enquanto o widget de tela é utilizado para desenhar formas como linhas, polígonos, rectângulos, etc. na aplicação. Além disso, Tkinter é uma biblioteca integrada para Python, pelo que não é necessário instalá-la como outra estrutura GUI. Dado abaixo é um exemplo de codificação usando Tkinter.
from tkinter import *class Root(Tk): def __init__(self): super(Root,self).__init__() self.title("Python Tkinter") self.minsize(500,400)root = Root()root.mainloop()
A saída do código acima é como mostrado abaixo:
3. PySide 2
A terceira biblioteca GUI Python de que vamos falar é PySide2 ou pode chamar-lhe QT de python. Qt for Python oferece as ligações oficiais Python para Qt (PySide2), permitindo a utilização das suas APIs em aplicações Python, e uma ferramenta geradora de ligações (Shiboken2) que pode ser utilizada para expor projectos C++ em Python.
Qt para Python está disponível sob a licença comercial LGPLv3/GPLv3 e a licença comercial Qt.
Então agora deixe-me mostrar-lhe o processo de instalação e também um exemplo. Assim, para a instalação, pode simplesmente usar:
pip install PySide2
Here, é um exemplo para configurar uma moldura GUI usando PySide2.
from PySide2.QtWidgets import QtWidgets, QApplicationimport sysclass Window(QtWidgets): def __init__(self): super().__init__() self.setWindowTitle("Pyside2 Window") self.setGeometry(300,300,500,400)app = QApplication(sys.argv)window=Window()window.show()app.exec_()
A saída do código acima é como mostrado abaixo:
4. Kivy
Outra estrutura GUI sobre a qual vamos falar chama-se Kivy. Kivy é uma biblioteca Python de código aberto para o rápido desenvolvimento de aplicações que fazem uso de interfaces de utilizador inovadoras, tais como aplicações multi-toque.
Kivy corre em Linux, Windows, OS X, Android, iOS, e Raspberry Pi. Pode correr o mesmo código em todas as plataformas suportadas. Pode utilizar nativamente a maioria dos inputs, protocolos e dispositivos incluindo WM_Touch, WM_Pen, Mac OS X Trackpad e Magic Mouse, Mtdev, Linux Kernel HID.
Kivy é 100% gratuito, sob uma licença MIT.
O kit de ferramentas é profissionalmente desenvolvido, apoiado, e utilizado. Pode utilizá-lo num produto comercial. A estrutura é estável e tem uma API bem documentada, mais um guia de programação para o ajudar a começar.
O motor gráfico do Kivy é construído sobre OpenGL ES 2, utilizando um pipeline gráfico moderno e rápido.
O toolkit vem com mais de 20 widgets, todos altamente extensíveis. Muitas partes são escritas em C usando Cython, e testadas com testes de regressão.
P>Com a instalação do Kivy, é necessário instalar a dependência “glew”. Pode usar o comando pip como abaixo:
pip install docutils pygments pypiwin32 kivy.deps.sdl2 kivy.deps.glew
Entrar este comando e pressionar enter, ele será instalado. Depois disso, é necessário digitar este comando para instalar Kivy:
pip install Kivy
Então, após a instalação, deixe-me mostrar-lhe um exemplo simples de Kivy para mostrar como é fácil.
from kivy.app import Appfrom kivy.uix.button import Buttonclass TestApp(App): def build(self): return Button(text= " Hello Kivy World ")TestApp().run()
A saída do código acima é como se mostra abaixo:
5. wxPython
Por isso a última estrutura GUI de que vamos falar é wxPython. wxPython é um conjunto de ferramentas GUI multi-plataforma para a linguagem de programação Python.
Permite aos programadores Python criar programas com uma interface gráfica de utilizador robusta e altamente funcional, simples e fácil. É implementado como um conjunto de módulos de extensão Python que envolvem os componentes GUI da popular biblioteca multi-plataforma wxWidgets, que é escrita em C+++.
Like Python e wxWidgets, wxPython é Open Source.
wxPython é um conjunto de ferramentas multi-plataforma. Isto significa que o mesmo programa será executado em múltiplas plataformas sem modificação. Actualmente, as plataformas suportadas são Microsoft Windows, Mac OS X e macOS, e Linux.
Agora vou mostrar-lhe o processo de instalação e criar um exemplo simples. Assim, para a instalação basta digitar o seguinte comando:
pip install wxPython
Aqui está um exemplo:
import wxclass MyFrame(wx.Frame): def __init__(self,parent,title): super(MyFrame,self).__init__(parent,title=title,size=(400,300)) self.panel=MyPanel(self)class MyPanel(wx.Panel): def __init__(self,parent): super(MyPanel,self).__init__(parent)class MyApp(wx.App): def OnInit(self): self.frame=MyFrame(parent=None, title= "wxPython Window") self.frame.show() return Trueapp = MyApp()app.MainLoop()
A saída do código acima é como se mostra abaixo:
Conclusão
Então agora vimos 5 bibliotecas Python GUI e na minha opinião, PySide2 e pyQt5 são as estruturas GUI mais poderosas. Mas eles vêm com uma licença comercial e isso explica porque são ricos em características. Tkinter, Kivy, e wxPython são as bibliotecas GUI gratuitas para Python.
Qual é a sua biblioteca GUI preferida em Python?