3

私のココアアプリケーションでは、Enter/Returnキーをチェックする必要があります。そのために私は以下のコードを使用しています

if ((event.keyCode == 36) || (event.keyCode == 76) || (event.keyCode == 13))
{
// Some code after checking Enter key
}

誰かがこれが正しい方法であるかどうかを示唆できますか?前もって感謝します :)

4

1 に答える 1

4

まったく正しい方法ではありません-キーコードと文字コードを混同しています。Peter Hosey がコメントで指摘しているように、13 はW キーのキーコードです。

つまり、キーコードが Return キーまたは Enter キーであるかどうかをif ((event.keyCode == 36) || (event.keyCode == 76))確認します。

文字コードを確認したい場合は、次のようにします。

NSString *chars = event.charactersIgnoringModifiers;
unichar aChar = [chars characterAtIndex: 0];
if (aChar == 13 || aChar == 3)

…そして、同じ効果が得られます。

于 2013-02-05T22:26:00.067 に答える