PyQt – Wikipédia, a enciclopédia livre
Esta página ou seção foi marcada para revisão devido a incoerências ou dados de confiabilidade duvidosa.Dezembro de 2017) ( |
Este artigo não cita fontes confiáveis. (Dezembro de 2017) |
PyQt é um empacotador da linguagem Python para a biblioteca Qt, que é a base do KDE (ambiente desktop para Linux). Existe uma biblioteca complementar, PyKDE, que atua sobre elementos específicos do KDE, como por exemplo interação com o kicker e a barra de tarefas. Suporta as plataformas Unix, Linux, Windows, Mac OS/X.
Licença
[editar | editar código-fonte]Segue de perto o sistema do Qt, que é GPL para programas sem fins comerciais nas plataformas UNIX/X11 (incluindo Linux), Windows e Mac OS X. Para os dois últimos, a licença GPL foi disponibilizada apenas a partir da versão 4.x. Para outros usos (código fechado, comercial, etc) há licenças alternativas de modo bem semelhante às licenças do próprio Qt para esses casos.
Características
[editar | editar código-fonte]- Desempenho: Como o Qt foi construído de forma a facilitar o desenvolvimento de wrappers, o desempenho do PyQt é bem próximo do Qt quando usado com C++.
- Fácil de aprender: A biblioteca Qt é famosa por ser extremamente bem documentada, pois a própria Trolltech possui um time de escritores técnicos. Apesar da documentação ser para C++, é fácil "traduzir" os exemplos para Python. Existe também um ótimo livro online sobre PyQt no site opendocs.org
- API: A API do PyQt utiliza um sistema de "slots" e "sinais", levemente similar ao sistema de sinais e callbacks utilizado por outras bibliotecas. A API é bastante rica e coerente.
- IDE: Possui uma IDE muito boa para criação de interfaces, chamada QT Designer. O programa pyuic transforma essas definições de interfaces em código Python, que pode então ser usado por outros programas.
- Portabilidade: Programas usando PyQt podem rodar com o visual nativo em todas as plataformas suportadas, inclusive no Windows Vista a partir da versão 4.3 do Qt.
Exemplo de código
[editar | editar código-fonte]import sys from qt import * class HelloButton(QPushButton): def __init__(self, *args): QPushButton.__init__(self, *args) self.setText("Hello World") class HelloWindow(QMainWindow): def __init__(self, *args): QMainWindow.__init__(self, *args) self.button=HelloButton(self) self.setCentralWidget(self.button) def main(args): app=QApplication(args) win=HelloWindow() win.show() app.connect(app, SIGNAL("lastWindowClosed()"), app, SLOT("quit()")) app.exec_loop() if __name__=="__main__": main(sys.argv)
Ver também
[editar | editar código-fonte]Ligações externas
[editar | editar código-fonte]- «Sítio oficial» (em inglês)
- «PyQt» (em inglês). - The Python Wiki