par , 01/06/2015 à 14h15 (1684 Affichages)
,
Voici un code très rapide permettant de lancer une musique et/ou un film en QML :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
| import QtQuick 2.4
import QtMultimedia 5.0
import QtQuick.Controls 1.3
import QtQuick.Layouts 1.1 // Histoire de placer facilement mes composants.
ApplicationWindow {
width : 800
height : 600
GridLayout {
id: grid
anchors.fill: parent
columns :2
Button {
text: "Lancer la musique"
onClicked: playMusic.play()
Layout.fillWidth: true
}
Button {
text: "Lancer le Film"
onClicked: video.play()
Layout.fillWidth: true
}
Video {
id: video
source: "/home/charlie/Movies/Taken.avi"
Layout.fillHeight: true
Layout.fillWidth: true
Layout.columnSpan: grid.columns
// au cas où l'on souhaite lancer la vidéo en cliquant sur l'espace réservé à sa lecture.
MouseArea {
anchors.fill: parent
onClicked: {
video.play()
}
}
}
Audio {
id: playMusic
source: "cosmo.mp3"
}
}
} |
et le code Python qui va bien:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| #!/usr/bin/env python
# -*- coding: utf-8 -*-
import sys, platform
from PyQt5.QtWidgets import QApplication
from PyQt5.QtQml import QQmlApplicationEngine, QQmlComponent
if __name__ == "__main__":
app = QApplication(sys.argv)
engine = QQmlApplicationEngine()
engine.load('test.qml')
win = engine.rootObjects()[0]
win.show()
sys.exit(app.exec()) |
ou la version C++ :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| #include <QApplication>
#include <QQmlApplicationEngine>
#include <QQmlContext>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QQmlApplicationEngine engine;
engine.load(QUrl(QStringLiteral("qrc:/test.qml")));
return app.exec();
} |
Déconcertant de simplicité !!!!