4

私はKeyEventsを使用しています

KeyEvent.getKeyText(KeyEvent.VK_...) 

KeyEvent に対応するテキストを取得するため。

OSX (Lion) では、TAB や ENTER (KeyEvent.VK_ENTER) などの特別なキーのテキストを要求すると、対応する記号が取得されます (たとえば、Enter の場合、曲がった矢印が表示されます)。Windows XP システムでも同様に、記号の代わりにキー名 (「Enter」など) が表示されます。

XPでも特殊文字を取得する解決策はありますか?

4

1 に答える 1

1

MAC には異なる実装があります。

これらは、Swing のウィンドウ内メニュー バーのメニュー ショートカットに適切な記号を提供するために意図的に変更されました。「メタ」または「コマンド」という単語を使用する代わりに、システム メニュー バーに表示される Unicode シンボルを実際に返すようになりました。

その場合、そのキーに定数を使用できますVK_ENTER

if (evt.getKeyCode() == KeyEvent.VK_DOWN || evt.getKeyCode() == KeyEvent.VK_KP_DOWN) {}

または、キーをその文字列名にマップすることができますMap

map.put(KeyEvent.VK_ENTER, '\u21b5'); \\ ↵
于 2012-05-02T16:05:38.110 に答える