Quero usar o Qt para desenvolver aplicativos de desktop, telefone e tablet Ubuntu, mas não quero aprender uma nova linguagem de programação (C ++, JavaScript). É possível escrever o aplicativo Qt em Python utilizando o Qt-Creator como IDE?
Quero usar o Qt para desenvolver aplicativos de desktop, telefone e tablet Ubuntu, mas não quero aprender uma nova linguagem de programação (C ++, JavaScript). É possível escrever o aplicativo Qt em Python utilizando o Qt-Creator como IDE?
Respostas:
Sim, o Qt-Creator é um IDE C ++, com pouco suporte para outras linguagens, mas desde a versão 2.8.0, um suporte python bastante básico foi adicionado.
Dito isto, você pode usar o Qt-Designer (a ferramenta de criação de formulários), o Qt-Translator (a ferramenta de conversão), etc ... facilmente com python.
No momento, existem duas ligações Qt-Python, a GPL / Commercial com licença dupla PyQt e a LGPL PySide . Eu uso o PyQt há muito tempo e sou um usuário feliz, também experimentei o PySide, mas parece menos maduro para mim. Se seus requisitos de licença permitirem, eu utilizaria o PyQt.
Apenas desing sua interface no Qt-Designer e converta-a em arquivo python executando pyuic4 .
Por exemplo:
pyuic4 editorFrame.ui -o editorFrame.py
então você pode importá-lo da sua classe principal; nesse caso, estou usando um QMainWindow:
import sys
from PyQt4 import QtGui
from editorFrame import Ui_MainWindow
class Editor(QtGui.QMainWindow):
def __init__(self):
super(Editor, self).__init__()
self.ui=Ui_MainWindow()
self.ui.setupUi(self)
self.show()
def main():
app = QtGui.QApplication(sys.argv)
ex = Editor()
sys.exit(app.exec_())
if __name__ == '__main__':
main()
sudo apt-get install pyqt4-dev-tools qt4-designer
Com o lançamento do Qt Creator 2.8, as coisas estão mudando. Agora ele suporta nativamente o Python para edição de código e existem poucos recursos baseados em Python.
Do anúncio de lançamento do Qt Creator 2.8 :
Um editor específico para Python foi adicionado, com destaque e recuo, e um assistente de classe Python
Você pode seguir esta série de tutoriais: Desenvolvendo aplicativos de plataforma cruzada usando Qt, PyQt e PySide: desenvolvimento de aplicativos de GUI - parte 5 de 5 . Ele discute completamente o Qt dev usando C ++, PyQt e PySide