PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : [c#] Gedrückte Taste eindeutig identifizieren


Kampf-Sushi
2007-02-27, 23:34:59
Nachdem ich mich jetzt langsam totgegoogelt hab (Suchmaschinen waren nie wirklich meine Stärke :() frag ich hier mal nach, evntl kennt ja jemand ne Lösung.

Ich möchte eine in einem Control (oder global, mir egal) gedrückte Taste exakt identifizieren. Auch Sondertasten.
Bisher hab ich das über das KeyEventArgs objekt im KeyDown-Event von ner Textbox probiert. Gibt aber Probleme dass z.B. Enter und Return den gleichen KeyValue-Wert haben. Auch beim Numpad gibts dann Schwierigkeiten mit den Doppelbedeutungen. Ich will die Taste wissen, nicht deren Bedeutung. Wenn ich Numlock aber an hab ist die Bedeutung eine andere.

Wer weiß Rat?

robobimbo
2007-02-28, 07:46:32
hilft dieser link?

http://www.galileocomputing.de/openbook/visual_csharp/visual_csharp_20_000.htm

Kampf-Sushi
2007-02-28, 10:19:34
Nein, leider nicht.
Das ist die Variante die ich vorher benutzt hab, ich brauch aber zB auch eine Unterscheidung zwischen rechter und linker Shift-Taste....
Soll mit GetAsyncKeyState aus der user32.dll gehen, aber wie komm ich da unter c# ran?
Mir wär eine Möglichkeit ohne API ehlich gesagt auch lieber... wenn da jemand eine Lösung hat, gerne her damit.

robobimbo
2007-02-28, 10:46:48
Hm, ne Lösungsvorschlag steht hier:

http://www.dotnet247.com/247reference/msgs/18/94186.aspx

...aber leider nicht obs auch wirklich so geht.

Kampf-Sushi
2007-02-28, 11:39:13
Jo, die Seite hab ich grad auch offen, aber noch werd ich nicht ganz schlau aus dem Beispielcode weil ich noch nie ne externe dll innerhalb von C# benutzt hab...

Kampf-Sushi
2007-02-28, 11:58:31
Jo, ich habs glaub ich... "user32.dll" muss man "User32.dll" schreiben -.-
Mal schaun ob ich damit hinkomm, sieht schonmal gut aus.