Программисту 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_())
После этого можем запускать.
Вот так вот.
