Как использовать Qt Creator с Python?


32

Я хочу использовать Qt для разработки приложений для настольных компьютеров, телефонов и планшетов Ubuntu, но я не хочу изучать новый язык программирования (C ++, JavaScript). Можно ли написать приложение Qt на Python, используя Qt-Creator в качестве IDE?

Ответы:


14

Да, Qt-Creator - это C ++ IDE, с небольшой поддержкой других языков, но начиная с версии 2.8.0 была добавлена ​​довольно простая поддержка Python.

Тем не менее, вы можете использовать Qt-Designer (инструмент для создания форм), Qt-Translator (инструмент для перевода) и т.д. ... легко с Python.

На данный момент существует две привязки Qt-Python: PyQt с двойной лицензией GPL / Commercial и LGPL PySide . Я использовал PyQt в течение долгого времени, и я счастливый пользователь, я также пробовал PySide, но он выглядит менее зрелым для меня. Если ваши лицензионные требования позволяют вам, я бы пошел на PyQt.


недавно добавленный codereview.qt-project.org/#q,status:open,n,z
PersianGulf

18

Просто создайте свой интерфейс в Qt-Designer и преобразуйте его в файл python, выполнив pyuic4 .

Например:

pyuic4 editorFrame.ui -o editorFrame.py

затем вы можете импортировать его из вашего основного класса, в этом случае я использую 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()

1
Просто на тот случай, если кому-то понадобится эта информация, чтобы установить pyuic4:sudo apt-get install pyqt4-dev-tools qt4-designer
Tshilidzi Mudau

8

С выходом Qt Creator 2.8 все меняется. Теперь он изначально поддерживает Python для редактирования кода, и есть несколько функций на основе Python.

Из анонса выпуска Qt Creator 2.8 :

Добавлен редактор, специфичный для Python, с подсветкой и отступами, а также мастер классов Python


2

Возможно, вы захотите следовать этой серии руководств: Разработка кроссплатформенного приложения с использованием Qt, PyQt и PySide: Разработка приложений с графическим интерфейсом - Часть 5 из 5 . Здесь полностью обсуждается Qt dev с использованием C ++, PyQt и PySide


Ссылка на урок больше не действительна.
Этьен
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.