Hallo zusammen,
Dies ist mein erster Post hier im Forum!
Ich wollte mal fragen, wie ich unter Linux/Qt einen Tastendruck simulieren kann. Ich will nämlich ein Software-Keyboard schreiben. Bisher hab ich nichts darüber gefunden. Hat jemand ne Idee? Danke für eure Hilfe!
gruß,
miho
Tastendruck simulieren
-
ArneStocker
- Beiträge: 300
- Registriert: 3. November 2004 16:15
- Wohnort: Berlin
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
-
BartSimpson
- Beiträge: 1379
- Registriert: 6. November 2004 12:03
- Kontaktdaten:
Ich hab mal eine Handschrifterkennung für Linux-PDA's zerpflückt und bin dabei fündig geworden. Man kann das Ganze mit der Xlib lösen. Ein Beispiel: führt man das Programm aus, scheint die "a"-Taste zu klemmen:)
a-taste.cpp:
übersetzen mit : g++ a-taste.cpp -L/usr/X11R6/lib -lX11 -lXtst
Gesendet wird das KeyEvent immer an das Fenster, das gerade offen ist.
Gruß,
miho
a-taste.cpp:
Code: Alles auswählen
#include <X11/Xlib.h>
#include <X11/extensions/XTest.h>
#include <X11/XKBlib.h>
#include <unistd.h>
main()
{
// Open a display.
Display *d = XOpenDisplay(0);
if ( d )
{
while (true)
{
XTestFakeKeyEvent (d, XKeysymToKeycode( d, 'a' ), true, 0);
XTestFakeKeyEvent (d, XKeysymToKeycode( d, 'a' ), false, 0);
}
}
return 0;
}Gesendet wird das KeyEvent immer an das Fenster, das gerade offen ist.
Gruß,
miho