qt中的QMessagebox怎么将其自动关闭

如图,用以下方式产生的QMessagebox提示框怎么将其自动关闭QMessageBox::warning(this,tr("error"),ftpClient->err... 如图,用以下方式产生的QMessagebox提示框怎么将其自动关闭
QMessageBox::warning(this,tr("error"),ftpClient->errorString());
谢谢了,有什么方法没有?除了新建box用定时器的方法
展开
 我来答
阿金纪实录
2013-02-18 · TA获得超过766个赞
知道小有建树答主
回答量:250
采纳率:100%
帮助的人:123万
展开全部
你定义一个定时器,比如:QTimer timer;

QMessageBox *messageBox=newQMessageBox(QMessageBox::Information,"Information","AutoClose",QMessageBox::Close,this);

messageBox->show();
再用信号与槽就可以了。
connect(&timer,SIGNAL(timeout()),messageBox,SLOT(close()));
我是试过的,是能够行的!
更多追问追答
追问
谢谢你的回答,像你说的这样自定义QMessageBox ,是可以关闭的,但是我现在是静态的
QMessageBox::warning
QMessageBox::warning(this,tr("error"),ftpClient->errorString());

静态有没有办法关闭的。
呵呵,有人说干嘛不自定义,这里就不详细说明了,必须要静态的,谢谢
追答
如果用表态的话肯定是不行的,因为信号和槽是用的对象,为什么一定要用静态的呢?waring也有对象的啊

messageBox=newQMessageBox(QMessageBox::Warning,"Information","AutoClose",QMessageBox::Close,this);
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式