ich habe folgende Situation (unter Qt 3.3.7): In einer von QThread abgeleiteten Klasse poste ich ein QCustomEvent
Code: Alles auswählen
// in .h
enum eEventType {
ProgressEvent = 1001, ///< Fortschritt um eine Stufe.
FinishedEvent = 1002 ///< Thread wurde beendet
};
// in .cpp
QApplication::postEvent( _pParent, new QCustomEvent( eEventType::ProgressEvent ) );
Code: Alles auswählen
void MyGui::customEvent(QCustomEvent *event)
{
if ( (int)event->type() == MyThread::eEventType::ProgressEvent ) {
if ( _pProgressDialog ) {
_iProgressStep++;
_pProgressDialog->setProgress( _iProgressStep );
} else {
qDebug("Dialog weg");
}
}
}
Code: Alles auswählen
_pProgressDialog->close( true );
_pProgressDialog = NULL;
Kann ich das Event irgendwie ignorieren?
Wo kommt das so spät noch her (ich habe es schon mit einem QApplication::processEvents() versucht)?
Gruß, Ed