在用Qt写一个简单的音乐播放器(一):使用QMediaPlayer播放音乐中,我们已经知道如何去使用QMediaPlayer播放音乐。但是一个对于一个音乐播放器来说,这是远远不够的,至少我们需要有一个简单的用户操作界面吧,让用户开业选择开始和暂停吧。那么让我们开始吧。
如图所示,双击mainwindow.ui,进入设计界面。 如图所示,Qt的设计界面就长这样。 如图所示,在其中button这一栏中,可以看到有很多不同的Button(按钮)。 只是简单的播放暂停我们选择PushButton就可以了,其他的,大家可以自己研究一下。 如图所示,选中PushButton,将其拖拽到界面中。 然后双击我们界面上的PushButton按钮,将其重命名,Play(播放),Pause(暂停)。 选择play按钮,我们可以看到,图中右侧,为了方便我们编程,我们将其名字进行修改:btnPlay(其中,btn为button的缩写,Play为按钮的功能)。同样另一个按钮我们也修改为:btnPause。
界面我们大概就设计好了,那么代码该怎么做呢? 首先先把在(一)里注释的代码解开,把我们写的删掉。
#include "mainwindow.h" #include <QApplication> int main(int argc, char *argv[]) { QApplication a(argc, argv); MainWindow w; w.show(); return a.exec(); }
双击mainwindow.h,如图所示,加上圈起来的两行代码 然后,打开设计界面,选中Play,右键,点击转到槽。 选择点击clicked后,点击OK。 这时候代码自动跳转到mainwindow.cpp,并出现on_btnPlay_clicked()函数。这个函数中就代表着,点下Play按钮后,触发的事件。 在on_btnPlay_clicked()中加入以下代码,如图所示
void MainWindow::on_btnPlay_clicked() { if(QMediaPlayer:: PausedState != m_mediaPlayer.state()){ m_mediaPlayer.setVolume(50); m_mediaPlayer.setMedia(QUrl::fromLocalFile("D:\\music\\BIGBANG - LOSER (Live).mp3")); } m_mediaPlayer.play(); }
如法炮制,暂停按钮,双击mainwindow.ui,pause按钮,我们也转到槽,并且在on_btnPause_clicked()中增加如下代码
void MainWindow::on_btnPause_clicked() { if(QMediaPlayer:: PlayingState == m_mediaPlayer.state()){ m_mediaPlayer.pause(); } }
如下图所示,点击图中的绿色小三角,程序开始构建。 出现下图,代表构建完成, 点击Play按钮,音乐播放, 点击Pause按钮,音乐暂停。
当然,仅有播放和暂停,对于一个音乐播放器来说,还是远远不够的,那么下一篇博客(三)中,增加新的功能。 用Qt写一个简单的音乐播放器(三):增加界面(播放跳转与音量控制)