本章内容接着 Qt Quick中使用Material风格样式 这一章的内容。

修改main.qml

import QtQuick import QtQuick.Controls //import QtQuick.Controls.Material import QtMultimedia ApplicationWindow { width: 640 height: 480 visible: true title: qsTr("Material风格") // Material.theme: Material.Dark MediaPlayer { id: playMusic source: "D:/yingyue/俩俩相忘.mp3" audioOutput: AudioOutput {} } Button { text: qsTr("播放") anchors.centerIn: parent highlighted: true // Material.accent: Material.Orange onClicked: playMusic.play() } }

第4行代码引入QtMultimedia模块

第13行至第17行代码就是使用MediaPlayer播放音乐了。

第15行代码定义音乐文件的路径。

注:这里读者朋友要根据自己的实际需要进行定义。另外要注意路径分隔符“/”的写法。

第24行代码就是响应播放按钮的点击事件,点击播放后就会播放指定的音乐了。

注:这里之前要是安装Qt时使用的默认安装的话,会报错。因为默认安装时是没有安装QtMultimedia模块。这时可以打开开始菜单下的Qt文件夹中的Qt Maintenance Tool进行安装。

qt音乐播放器widget(Quick中使用MediaPlayer播放音乐)(1)

qt音乐播放器widget(Quick中使用MediaPlayer播放音乐)(2)

qt音乐播放器widget(Quick中使用MediaPlayer播放音乐)(3)

这里读者朋友可以根据自己的需要选择版本,我选择的是最新的。

qt音乐播放器widget(Quick中使用MediaPlayer播放音乐)(4)

代码修改好了,也安装好了所需模块,就构建运行程序,点击“播放按钮”,已经可以播放音乐了。

继续修改代码main.qml

import QtQuick import QtQuick.Controls //import QtQuick.Controls.Material import QtMultimedia ApplicationWindow { width: 360 height: 680 visible: true title: qsTr("Material风格") // Material.theme: Material.Dark MediaPlayer { id: playMusic source: "D:/yingyue/俩俩相忘.mp3" audioOutput: AudioOutput {} loops: MediaPlayer.Infinite } RoundButton { id: playButton text: qsTr("▷") highlighted: true onClicked: playMusic.play() } RoundButton { id: pauseButton text: qsTr("‖") highlighted: true anchors.left: playButton.right onClicked: playMusic.pause() } RoundButton { id: stopButton text: qsTr("□") highlighted: true anchors.left: pauseButton.right onClicked: playMusic.stop() } }

第17行程序loops属性定义循环次数,我这里取的是无限循环,因为我现在喜欢单曲循环[憨笑]如果不定义的话,默认是1次。

构建运行程序,一个简单的音乐播放器就做成了。

qt音乐播放器widget(Quick中使用MediaPlayer播放音乐)(5)

现在点击播放、暂停和停止按钮感受一下,是不是已经可以正常工作了。

MediaPlayer的更多内容,可以参见QtCreator自带的帮助文档。

,