Key-event außerhalb der GUI abfragen
Verfasst: 14. April 2009 13:19
Hallo,
ich kann wunderbar meine Tastatureingaben abfangen, indem ich einen EventFilter in meinem Konstruktor bekannt gebe und die entsprechende Methode implementiere.
Nun möchte ich jedoch jeden Tastendruck wissen, auch wenn er eintrifft, während sich der Mauszeiger außerhalb des GUI-Fensters befindet.
Kann mir jemand sagen was ich dafür anders machen muss? Mein bisheriger Code sieht in etwa so aus:
ich kann wunderbar meine Tastatureingaben abfangen, indem ich einen EventFilter in meinem Konstruktor bekannt gebe und die entsprechende Methode implementiere.
Nun möchte ich jedoch jeden Tastendruck wissen, auch wenn er eintrifft, während sich der Mauszeiger außerhalb des GUI-Fensters befindet.
Kann mir jemand sagen was ich dafür anders machen muss? Mein bisheriger Code sieht in etwa so aus:
Code: Alles auswählen
test::test(QWidget *parent)
{
....
this->installEventFilter(this);
....
}
bool test::eventFilter(QObject *watchedObj, QEvent *event)
{
if (event->type() == QEvent::KeyPress)
{
QKeyEvent *keyEvent = static_cast<QKeyEvent *>(event);
if (keyEvent->key() == Qt::Key_Q)
{
// hier führe ich meine gewünschte Funktion aus
return true;
}
...
}
else
{
// standard event processing
return QObject::eventFilter(watchedObj, event);
}
}