Voglio usare Qt per sviluppare applicazioni desktop, telefoniche e tablet Ubuntu ma non voglio imparare un nuovo linguaggio di programmazione (C ++, JavaScript). È possibile scrivere l'applicazione Qt in Python utilizzando Qt-Creator come IDE?
Voglio usare Qt per sviluppare applicazioni desktop, telefoniche e tablet Ubuntu ma non voglio imparare un nuovo linguaggio di programmazione (C ++, JavaScript). È possibile scrivere l'applicazione Qt in Python utilizzando Qt-Creator come IDE?
Risposte:
Sì, Qt-Creator è un IDE C ++, con scarso supporto per altre lingue ma dalla versione 2.8.0 è stato aggiunto un supporto python abbastanza semplice.
Detto questo, puoi usare facilmente Qt-Designer (lo strumento per la creazione di moduli), Qt-Translator (lo strumento di traduzione), ecc ... con Python.
Esistono due attacchi Qt-Python in questo momento, il doppio PyQt con licenza GPL / Commercial e il PySide LGPL . Ho usato PyQt per molto tempo e sono un utente felice, ho anche provato PySide ma mi sembra meno maturo. Se i requisiti di licenza ti consentono, sceglierei PyQt.
Desidera semplicemente la tua interfaccia in Qt-Designer e convertirla in file Python eseguendo pyuic4 .
Per esempio:
pyuic4 editorFrame.ui -o editorFrame.py
quindi puoi importarlo dalla tua classe principale, in questo caso sto usando una 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
Con il rilascio di Qt Creator 2.8 le cose stanno cambiando. Ora supporta nativamente Python per la modifica del codice e ci sono alcune funzionalità basate su Python.
Dall'annuncio della versione Qt Creator 2.8 :
È stato aggiunto un editor specifico per Python, con evidenziazione e rientro, e una procedura guidata di classe Python
Potresti voler seguire questa serie di tutorial: Sviluppo di applicazioni multipiattaforma usando Qt, PyQt e PySide: Sviluppo di applicazioni GUI - Parte 5 di 5 . Discute completamente dello sviluppo di Qt usando C ++, PyQt e PySide