2009-03-23 3 views
0

Я делаю программу, которая позволяет пользователю создавать пользовательские сочетания клавиш, для этого мне нужны доступные клавиши для отображения, что является лучшим способом достижения это в java swing?Все ключи к списку, например VK_A..Z для пользователя, чтобы выбрать

KeyEvent.class.getDeclaredFields() 

Я заинтересуют в динамическом примере ниже,

keysLST.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "CTRL", "ALT", "SHIFT" })); 

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

Благодаря

ответ

0

Вместо того, чтобы выбрать из списка, добавьте KeyListener к любому компоненту (а JTextField работы) и записать код ключа, как пользователь нажимает клавишу. Вы также можете записывать модификаторы (ctrl, alt, shift) таким образом.

public void keyPressed(KeyEvent e) 
{ 
    int keyTheUserJustPressed = e.getKeyCode(); 

    // then use for ctrl/alt/shift 
    e.getModifiersEx(); 

    // or use 
    e.isAltDown(); 
    e.isShiftDown(); 
} 
+0

Привет basszero, я хочу, чтобы этот выбор, как они будут использоваться в дальнейших с помощью робота, робот будет посылать ключи он считывает из списка или по умолчанию является не выбран ни один. – xusenm

+0

затем сохраните e.getKeyCode() в некоторой структуре за пределами слушателя – basszero

+0

В ходе дальнейшего расследования я считаю, что ваша идея orignal была хорошей, пользователю легче щелкнуть по клавишам, чем пройти через огромный список. Спасибо за помощь! – xusenm