Программисту Python порой очень хочется запрограммировать еще и какой нибуть GUI.
Есть всем известный pyqt. Но ребята жадничают с лицензией и вы не сможете использовать его в комерческих целях.
А разучивать очередной продукт без интереса рабочего тоже как то не весело.
Так вот. Есть еще проект pyside, начатый уже после продажи Qt из Nokia в Digia.
Скажу честно, знаток PyQt я никакой. Но эта библиотека мне както ближе к телу.
Посмотрим как можно сделать QML привет мир.
QML файл в котором создаем интерфейс.
import QtQuick 1.0 Rectangle { width: 200 height: 200 color: "red" Text { text: "Hello World" anchors.centerIn: parent } }
Ну а теперь код на питоне.
#!/usr/bin/env python # -'''- coding: utf-8 -'''- import sys from PySide.QtCore import * from PySide.QtGui import * from PySide.QtDeclarative import * # наше окно class MainWindow(QDeclarativeView): def __init__(self, parent=None): super(MainWindow, self).__init__(parent) self.setWindowTitle("Main Window") # подгружаем 'view.qml' self.setSource(QUrl.fromLocalFile('view.qml')) # чтобы QML ресайзился вместе с окном self.setResizeMode(QDeclarativeView.SizeRootObjectToView) if __name__ == '__main__': # создаем QApplication app = QApplication(sys.argv) # создаем и показываем окно window = MainWindow() window.show() # пускаем цикл ожидания sys.exit(app.exec_())
После этого можем запускать.
Вот так вот.