Ich weiß, wie man das Drücken von Tasten erkennt. Alle Tasten außer Control, Alt, Shift und CMD.
Wie kann ich erkennen, wenn diese Tasten gedrückt werden?
Vielen Dank im Voraus.
Ich weiß, wie man das Drücken von Tasten erkennt. Alle Tasten außer Control, Alt, Shift und CMD.
Wie kann ich erkennen, wenn diese Tasten gedrückt werden?
Vielen Dank im Voraus.
Wenn Sie diese Tasten in etwas wie einem NSView
-Objekt erkennen möchten, werfen Sie einen Blick auf die Klasse NSResponder
. Wenn Sie eine NSView
-Klasse (oder eine ihrer Unterklassen) überschreiben, können Sie keyDown:(NSEvent *)theEvent
(Apple-Dokumentation) überschreiben. Wenn Sie [theEvent modifierFlags]
aufrufen, wird ein NSUInteger
-Bitfeld zurückgegeben, das Sie dann auswerten können.
Zum Beispiel, mit
if ([theEvent modifierFlags] & NSCommandKeyMask) {
...
}
können Sie überprüfen, ob die Befehlstaste gedrückt ist.
Sehen Sie sich Apples Cocoa Event-handling Guide an, insbesondere den Abschnitt "Behandlung von Tastaturereignissen", für weitere Informationen.
In
- (void) flagsChanged: (NSEvent *)theEvent
[theEvent keyCode]
gibt eine Nummer für CRTL
, SHIFT
, ALT
usw. an, daher müssen Sie nur eine Variable für diese Modifier umschalten, die zu Beginn auf 0
eingestellt ist.
Wenn Sie OpenGL verwenden, müssen Sie möglicherweise setzen:
-(BOOL) canBecomeKeyWindow
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.