Qt下QMessageBox的问题
现在我在QT下要做一个闹钟程序,时间到了弹出对话框,然后循环播放音乐,你点击对话框的OK按钮的时候退出对话框并且关音乐。然后对话框是这样voidWindow::dialo...
现在我在QT下要做一个闹钟程序,时间到了弹出对话框,然后循环播放音乐,你点击对话框的OK按钮的时候退出对话框并且关音乐。然后对话框是这样
void Window::dialogup()
{
QMessageBox::information(0,"Alarm","Warning:You set the time is now!");//对话框内容
}
void Window::comToCur()
{
if( QVariant(QTime::currentTime()).toString() == QVariant(TimeEdit1->time()).toString() )
{
QApplication::beep();
dialogup();
}
}//设置的时间和系统时间对比,时间到了弹出对话框
然后播放音乐是
void Window::play()
{
QSound::play("./mysound/a.wav");
}
void Window::dialogdown()
{
QSound::stop("./mysound/a.wav");
}//这两段估计还有错,这个是关闭对话框,音乐循环的部分还没写
我现在想利用QMessageBox弹出的OK按钮,点击他退出对话框并且关闭音乐,这个怎么实现。QMessageBox里面也没具体的对OK按钮的操作,刚学Qt不久编程能力也有限,各位帮帮忙(另外Qt下可以直接这样播放WAV音乐吗?为什么我调用Qapplication::beep()来用系统默认铃声的时候就没有什么声音响起来?)
还有可以的话帮我编改下实现音乐播放部分的代码。谢谢了
100分还只有一个回答,是有返回值,但是OK能做什么?点击下就退出了。。
3L大概就是这个意思啦,不过我决定不搞这个播放的功能了。谢谢了。 展开
void Window::dialogup()
{
QMessageBox::information(0,"Alarm","Warning:You set the time is now!");//对话框内容
}
void Window::comToCur()
{
if( QVariant(QTime::currentTime()).toString() == QVariant(TimeEdit1->time()).toString() )
{
QApplication::beep();
dialogup();
}
}//设置的时间和系统时间对比,时间到了弹出对话框
然后播放音乐是
void Window::play()
{
QSound::play("./mysound/a.wav");
}
void Window::dialogdown()
{
QSound::stop("./mysound/a.wav");
}//这两段估计还有错,这个是关闭对话框,音乐循环的部分还没写
我现在想利用QMessageBox弹出的OK按钮,点击他退出对话框并且关闭音乐,这个怎么实现。QMessageBox里面也没具体的对OK按钮的操作,刚学Qt不久编程能力也有限,各位帮帮忙(另外Qt下可以直接这样播放WAV音乐吗?为什么我调用Qapplication::beep()来用系统默认铃声的时候就没有什么声音响起来?)
还有可以的话帮我编改下实现音乐播放部分的代码。谢谢了
100分还只有一个回答,是有返回值,但是OK能做什么?点击下就退出了。。
3L大概就是这个意思啦,不过我决定不搞这个播放的功能了。谢谢了。 展开
展开全部
兄弟,你这个问题我以前遇到过。虽然没有具体的对OK按钮定义操作,但你其实可以自己定义。这样使用QMessageBox的时候就需要自己添加按钮,然后让他对应你自己dinghies的关闭音乐函数和退出函数。
QMessageBox msg;
msg.setText(tr("是否要退出音乐播放?"));
QAbstractButton *confirmButton = msg.addButton(tr("OK"), QMessageBox::ActionRole);
QAbstractButton *cancelButton = msg.addButton(tr("CANCEL"), QMessageBox::ActionRole);
msg.exec();
if(msg.clickedButton() == confirmButton){
//这里写你的关闭音乐播放函数
//退出函数
}
else{
return;
}
你看是这个意思不?
QMessageBox msg;
msg.setText(tr("是否要退出音乐播放?"));
QAbstractButton *confirmButton = msg.addButton(tr("OK"), QMessageBox::ActionRole);
QAbstractButton *cancelButton = msg.addButton(tr("CANCEL"), QMessageBox::ActionRole);
msg.exec();
if(msg.clickedButton() == confirmButton){
//这里写你的关闭音乐播放函数
//退出函数
}
else{
return;
}
你看是这个意思不?
展开全部
QMessageBox::information是有返回值的
int ret = QMessageBox::information(0, "My Application",
"The document has been modified.\n",
QMessageBox::Ok);
if ( ret == QMessageBox::Ok ){
qDebug()<<"ok";
}else {
qDebug()<<"bad";
}
int ret = QMessageBox::information(0, "My Application",
"The document has been modified.\n",
QMessageBox::Ok);
if ( ret == QMessageBox::Ok ){
qDebug()<<"ok";
}else {
qDebug()<<"bad";
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
抢分,uP!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询