云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 成都理工大学Qt课程设计实验报告-基于QT实现的简易音乐播放器

成都理工大学Qt课程设计实验报告-基于QT实现的简易音乐播放器

  • 62 次阅读
  • 3 次下载
  • 2025/6/18 8:08:57

{

QMenu *fileMenu = menuBar()->addMenu(tr(\文件\ fileMenu->addAction(addFilesAction); }

最终功能效果如图:

2,显示播放时间功能

void MainWindow::tick(qint64 time) {

QTime displayTime(0, (time / 60000) % 60, (time / 1000) % 60); timeLcd->display(displayTime.toString(\}

功能效果如图:

3,播放进度条功能

seekSlider = new Phonon::SeekSlider(this); seekSlider->setMediaObject(mediaObject); QHBoxLayout *seekerLayout = new QHBoxLayout; seekerLayout->addWidget(seekSlider

9

功能效果如图:

4,播放控制功能

void MainWindow::setupActions() {

playAction = new QAction(style()->standardIcon(QStyle::SP_MediaPlay), tr(\ playAction->setDisabled(true);//设置初始不可点击

pauseAction=newQAction(style()->standardIcon(QStyle::SP_MediaPause),tr(\ pauseAction->setDisabled(true); //设置初始不可点击

stopAction = new QAction(style()->standardIcon(QStyle::SP_MediaStop), tr(\

stopAction->setDisabled(true); //设置初始不可点击 //连接槽函数

connect(playAction, SIGNAL(triggered()), mediaObject, SLOT(play())); connect(pauseAction, SIGNAL(triggered()), mediaObject, SLOT(pause()) ); connect(stopAction, SIGNAL(triggered()), mediaObject, SLOT(stop())); connect(addFilesAction, SIGNAL(triggered()), this, SLOT(addFiles())); }

将播放控制按钮添加到窗体,使用QToolBar类的bar指针布局 QToolBar *bar = new QToolBar; bar->addAction(playAction); bar->addAction(pauseAction); bar->addAction(stopAction);

功能效果如图:

10

5,音量滑块功能

volumeSlider = new Phonon::VolumeSlider(this); volumeSlider->setAudioOutput(audioOutput);

volumeSlider->setSizePolicy(QSizePolicy::Maximum, QSizePolicy::Maximum); QToolBar *bar = new QToolBar;

QHBoxLayout *playbackLayout = new QHBoxLayout; playbackLayout->addWidget(bar);

playbackLayout->addWidget(volumeSlider);

功能效果如图:

6,换肤功能

QPushButton *PbChange;//换肤按钮 PbChange = new QPushButton(\换肤\

connect(PbChange,SIGNAL(clicked()),this,SLOT(slotChange()));

//槽函数,每一个随机数对应一种事件,换背景图片 void MainWindow::slotChange() {

int i= myRand(miGrade); switch (i) { case 0:

setStyleSheet(\ break; case 1:

setStyleSheet(\

11

break; case 2:

setStyleSheet(\ break; case 3:

setStyleSheet(\ break;default: break; }

int MainWindow::myRand(int max)//产生4以内的随机正整数 {

max = 4; int r = qrand(); return r%max; }

7.点击事件

void MainWindow::tableClicked() {

bool wasPlaying = mediaObject->state() == Phonon::PlayingState; mediaObject->stop(); mediaObject->clearQueue(); if (wasPlaying) mediaObject->play(); else

mediaObject->stop(); }

8.主窗口设置

QWidget *widget = new QWidget; widget->setLayout(mainLayout);

12

  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

{ QMenu *fileMenu = menuBar()->addMenu(tr(\文件\ fileMenu->addAction(addFilesAction); } 最终功能效果如图: 2,显示播放时间功能 void MainWindow::tick(qint64 time) { QTime displayTime(0, (time / 60000) % 60, (time / 1000) % 60); timeLcd->display(displayTime.toString(\} 功能效果如图: 3,播放进度条功能 seekSlider = new Phonon::SeekSli

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com