你这个“这说明这个postEvent(this, new QEvent(QEvent::DeferredDelete))并不起什么作用嘛。
”有点武断吧。
大家讨论一下这种情况吧,我没怎么想明白。
void qxxx :: func()
{
k++;
if(k>20)
{
emit errorXXXX();
k = 0; //focus here plz!
}
}
////////////////////////////////
qyyy:qyyy()
{
m_pXXXX = new qxxx;
connect(m_pXXXX,SIGNAL(errorXXXX()),this,SLOT(errorHandle));
}
void qyyy::errorHandle()
{
delete m_pXXXX;
m_pXXXX = NULL;
}
写得很丑,不过大家应该看得明白:)