Manual keystrokes using swt


I want to do someStuff () when CTRL-C is pressed. I wrote the code, but it is not good enough. What can I do about it?)

//org.eclipse.draw2d.Shape getShape(){....} getShape().addKeyListener(new KeyListener(){ @Override public void keyPressed(KeyEvent ke) { } @Override public void keyReleased(KeyEvent ke) { /*if CTRL-C pressed*/ if((ke.getState() & KeyEvent.CONTROL) != 0 && 'c' == ('a' + ke.character - 1)){ someStuff(); } } }); 

Thanks.

+6
java user-interface swt keylistener draw2d
source share
2 answers

Try the following:

 getShape().addListener(SWT.KeyUp, new Listener() { public void handleEvent(Event event) { if (event.stateMask == SWT.CTRL && event.keyCode == 'c') { someStuff(); } }}); 
+7
source share

Try using the following condition to test CTRL-C:

 public void keyReleased(KeyEvent event) { if (event.getKeyCode() == KeyEvent.VK_C && event.getModifiers() == InputEvent.CTRL_MASK) someStuff(); } 
0
source share

All Articles