Здравствуйте, Lucker, Вы писали:
L>Здравствуйте, <Аноним>, Вы писали:
А>>А можно сделать так что бы по нажатию на пробел любая кнопка которая в фокусе не нажималась а нажималась та кнопка для которой явно определена такая акция ?
L>я так думаю, надо просто удалить соответствующий KeyStroke с WHEN_FOCUSED InputMap кнопки.
L>L>button.getInputMap(JComponent.WHEN_FOCUSED).remove(KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, 0));
L>
Спасибо большое !!!
я составил тестовый пример для проверки ... не работает
import javax.swing.*;
import java.awt.event.KeyEvent;
public class Test2 extends JFrame{
JButton jb = new JButton("Test");
JPanel jp = new JPanel();
public Test2() {
jb.getInputMap(JComponent.WHEN_FOCUSED).remove(KeyStroke.getKeyStroke(KeyEvent.VK_SPACE, 0));
jp.add(jb);
getContentPane().add(jp);
}
public static void main(String args[]) {
Test2 frame = new Test2();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setBounds(200, 200, 300, 200);
frame.show();
}
}