Как назначить клавишу ввода в качестве ярлыка для кнопки в приложении Eclipse RCP

У меня есть кнопка в групповом виджете, и я просто хочу создать сочетание клавиш (ввод), чтобы действие кнопки вызывалось и фокусировалось. Интересно, что произошло, когда я нажимаю пробел (на клавиатуре), вызывается соответствующее действие кнопки, которое не не работает с вводом. В конце концов, все, что я пытаюсь получить, это просто нажать ввод, чтобы сработало действие кнопки. Любые идеи, чтобы я мог поиграть с этим.


person srk    schedule 18.11.2011    source источник


Ответы (2)


Клавиша Enter (SWT.CR) не вызывает текущую кнопку, а кнопку по умолчанию для Shell. Вы устанавливаете кнопку по умолчанию с помощью

shell.setDefaultButton(button);
person Tonny Madsen    schedule 19.11.2011

Возможно, вы ищете метод #addKeyListener класса Button. Реализуйте KeyListener и в методе #keyReleased(KeyEvent keyEvent) оцените keyEvent следующим образом: if (e.keyCode == SWT.CR || e.keyCode == SWT.KEYPAD_CR) { //your code here}

person rmoestl    schedule 18.11.2011
comment
здесь SWT.CR относится к ключу ввода ?? - person srk; 19.11.2011
comment
SWT.CR означает Возврат каретки и является клавишей ввода. - person rmoestl; 21.11.2011