qt中的QMessagebox怎么将其自动关闭
如图,用以下方式产生的QMessagebox提示框怎么将其自动关闭QMessageBox::warning(this,tr("error"),ftpClient->err...
如图,用以下方式产生的QMessagebox提示框怎么将其自动关闭
QMessageBox::warning(this,tr("error"),ftpClient->errorString());
谢谢了,有什么方法没有?除了新建box用定时器的方法 展开
QMessageBox::warning(this,tr("error"),ftpClient->errorString());
谢谢了,有什么方法没有?除了新建box用定时器的方法 展开
1个回答
展开全部
你定义一个定时器,比如:QTimer timer;
QMessageBox *messageBox=newQMessageBox(QMessageBox::Information,"Information","AutoClose",QMessageBox::Close,this);
messageBox->show();
再用信号与槽就可以了。
connect(&timer,SIGNAL(timeout()),messageBox,SLOT(close()));
我是试过的,是能够行的!
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);
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询