Seite 1 von 1

Simulation einer Tastatur mittels QKeyEvent

Verfasst: 5. Januar 2010 12:04
von cyriacks
Hallo zusammen,

meine Anwendung basiert auf QApplication (also eine grafische Anwendung) mit QMainWindow als Haupt-Widget.

Innerhalb eines Projektes möchte ich die GUI Anwendung mittels Brain-Computer-Interface steuern. Da hier nur eine begrenzte Anzahl an möglichen Kommandos zur Verfügung steht wollte ich die Möglichkeit der Steuerung mittels Tabulatortaste verwenden.

Als Realisierungsansatz habe ich folgendes verwendet:

Code: Alles auswählen

QKeyEvent * pEvent = NULL;
pEvent = new QKeyEvent(QEvent::KeyPress,
                                   Qt::Key_Tab,
                                   Qt::NoModifier);
QApplication::postEvent(QApplication::instance(), pEvent);
Leider funktioniert das nicht wie erwartet: Das KeyEvent wird zwar gepostet und erreicht meine Anwendung (ermittelt über einen EventFilter im Widget) jedoch ist keie Tabulatorsteuerung möglich. Die aktivierte/hervorgehobene Schaltfläche ändert sich nicht.

Ich habe so den Eindruck das die Tabulatorsteuerung an anderer Stelle realisiert wird und ich das KeyEvent evtl. in die falsche Queue poste. Verwendet man nämlich eine normale Tastatur so funktioniert die Tabulatorsteuerung mein Widget mit dem Event Filter zeigt in diesem Fall jedoch nicht den Tastendruck der Tabulatortaste an. Irgendwer filter das also raus.... nur wer...?


Würde mich freuen hier den ein oder anderen Tipp zu bekommen.


Viele Grüße,
Marco