I want to use Qt for developing Ubuntu desktop, phone and tablet applications but I don't want to learn a new programming language (C++, JavaScript). Is it possible to write Qt application in Python utilizing Qt-Creator as IDE?
4 Answers
Just desing your interface in Qt-Designer and convert it to python file executing pyuic4.
Eg:
pyuic4 editorFrame.ui -o editorFrame.py
then you can import it from your main class, in this case i'm using a 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()
- 191
- 1
- 4
Yes, Qt-Creator is a C++ IDE, with little support for other languages but since version 2.8.0 a quite basic python support has been added.
That said you can use Qt-Designer (the form building tool), Qt-Translator (the translate tool), etc... easily with python.
There are two Qt-Python bindings right now, the GPL/Commercial dual licensed PyQt, and the LGPL PySide. I have used PyQt for a long time and I'm a happy user, I also have tried PySide but it looks less mature to me. If your license requirements allow you I'd go for PyQt.
- 35,434
With the release of Qt Creator 2.8 things are changing. It now natively supports Python for code editing and there are few Python-based features.
From Qt Creator 2.8 release announcement:
An editor specific for Python was added, with highlighting and indentation, and a Python class wizard
You may want to follow this tutorial series though : Developing Cross Platform Application using Qt, PyQt and PySide : GUI Application Development - Part 5 of 5. It completely discuss Qt dev using C++, PyQt and PySide
- 133