ycyu1455 发表于 2017-12-16 19:39:39

Phonon模块无法循环播放,MessageBox也很奇怪

本帖最后由 ycyu1455 于 2017-12-16 20:18 编辑

                Phonon::MediaObject mediaObject(this);
                mediaObject.setCurrentSource(Phonon::MediaSource(bellString));
                Phonon::AudioOutput audioOutput(Phonon::MusicCategory, this);
                Phonon::Path path = Phonon::createPath(&mediaObject, &audioOutput);//关联MediaObject、AudioOutput
                audioOutput.setVolume(tySliderValus);

                mediaObject.play();
                connect(&mediaObject,SIGNAL(finished()),SLOT(play())) ;
                QTimer::singleShot(500000, &mediaObject, SLOT(stop()));
                QMessageBox * MessageBox =new QMessageBox();
                MessageBox->setWindowTitle("闹钟~~~");
                MessageBox->setText(QString("%1 %2").arg(timeString).arg(nOte));
                MessageBox->exec();

MessageBox这个消息框关闭后会把音乐停了,这是为什么,我把红色部分的代码删除了,音乐居然也不播放了

ShadowCry 发表于 2017-12-16 19:39:40

你可以参考一下霍亚飞的《Qt及Qt Quick开发实战精解》中的音乐播放器实例,注意QT5中该模块以及被移除

ycyu1455 发表于 2017-12-17 14:27:46

嗯,我在做一个闹钟,用在铃声中

ShadowCry 发表于 2018-2-10 09:37:46

ycyu1455 发表于 2017-12-17 14:27
嗯,我在做一个闹钟,用在铃声中

对于这种用户提示音,可以使用QSound提供低延迟播放,QT5中的QSoundEffect更好,用来提供低延迟播放
页: [1]
查看完整版本: Phonon模块无法循环播放,MessageBox也很奇怪