Signale überwachen?

Verschiedenes zu Qt
Antworten
TheGrudge
Beiträge: 9
Registriert: 6. September 2007 23:12

Signale überwachen?

Beitrag von TheGrudge »

Hi,

gibt es irgendein Programm, mit dem ich sehen kann, welche Signale zur Laufzeit gesendet werden? Oder eine Compiler-Option, die mir das irgendwie anzeigen kann?
Ich versuche gerade ein Programm zu debuggen, bei dem anscheinend irgendwie Signale kollidieren. Ich drücke zum Beispiel einen Knopf, der eine Lampe einfärbt, aber kurz danach wird die Lampe von irgend einem anderen Signal wieder zurückgesetzt.
Jetzt wäre es schön zu sehen, was eigentlich passiert, während ich diesen Knopf drücke, also welche Signale "durch die Gegend fliegen".
Geht so etwas?
patrik08
Beiträge: 746
Registriert: 27. Februar 2006 10:48
Wohnort: DE Freiburg

Beitrag von patrik08 »

mit void QObject::installEventFilter ( QObject * filterObj )
http://doc.trolltech.com/4.2/qobject.ht ... ventFilter
kann man alles abfangen was won einen QObject kommt und alles was daruber ist ....

sogar selber erstellte events...

Code: Alles auswählen

bool PMovie::event ( QEvent * e )
{
    /////qApp->processEvents();
   if ( e->type() == QEvent::User ) {
				    PngEventBuffer *ep = static_cast<PngEventBuffer *>(e);
            if (ep) {
            status(ep->pos(),ep->sum());
						return true;
            }
		}
  QLabel::event(e);   /* cath all not needed */    
}
.........................
speack português italiano deutsch english castellà qt
TheGrudge
Beiträge: 9
Registriert: 6. September 2007 23:12

Beitrag von TheGrudge »

Danke, das werde ich mal probieren.
Ich dachte es gibt vielleicht ein Programm oder eine Compileroption, die aus den moc Dateien automatisch mehr Ausgaben generieren kann und während der runtime jedes emittete Signal ausgibt.
upsala
Beiträge: 3946
Registriert: 5. Februar 2006 20:52
Wohnort: Landshut
Kontaktdaten:

Beitrag von upsala »

QObject::sender() verrät einem Slot wer ihn aufgerufen hat...
Antworten