it-roy-ru.com

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

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

31
Ralf Hersel

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

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

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

13
Javier Rivera

Просто создайте свой интерфейс в 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 __== '__main__':
    main()
17
scaamanho

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

С объявление о выпуске Qt Creator 2.8 :

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

8
lzap

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

2
swdev