Я пытаюсь связать ключ Windows с помощью Java, и у меня ничего не получается. Я могу связать клавишу Alt или Ctrl с чем-нибудь еще.

Но если я хочу использовать клавишу Windows , я не могу ее получить.

Является ли это возможным?

2
hbt 11 Авг 2010 в 11:42

2 ответа

Лучший ответ

У меня это сработало, я использовал следующую константу из класса KeyEvent.

/**
 * Constant for the Microsoft Windows "Windows" key.
 * It is used for both the left and right version of the key.  
 * @see #getKeyLocation()
 * @since 1.5
 */
public static final int VK_WINDOWS                  = 0x020C;

Я реализую свой метод KeyListener следующим образом, и он сработал (я использую ubuntu 10):

    // Invoked when a key has been pressed.
    public void keyPressed(KeyEvent e) {
        // Returns the integer code for the key on the keyboard and if
        // keyCode is equal to VK_WINDOWS)...
        if (e.getKeyCode() == KeyEvent.VK_WINDOWS) {
            // ...call the doIT method.
            doIT();
        }
    } 
3
YoK 11 Авг 2010 в 12:25

В Linux ключ Windows обычно сопоставляется с мета-ключом, поэтому попробуйте Event.META_MASK.

1
Aaron Digulla 11 Авг 2010 в 11:45
Ubuntu отображает это как «Супер». Opensuse сопоставляет его с «Мета». Вы можете использовать xmodmap, чтобы изменить это.
 – 
Aaron Digulla
11 Авг 2010 в 14:02