Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[platform-swt-dev] Re: Need help about using Display.post

Hi all,
  I can use the hotkey ctrl + a now. First, I have no idea how to use it, 
but I can make a shell listening to key event. there are some information 
we can get from key event.

import org.eclipse.swt.events.KeyEvent;
import org.eclipse.swt.events.KeyListener;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;

public class Ktest {

    public static void main(String[] args) {
        Display display = new Display();
        Shell shell = new Shell(display);
        shell.open();

        shell.addKeyListener(new KeyListener() {

            public void keyPressed(KeyEvent arg0) {
                System.out.println("P"+arg0);

            }

            public void keyReleased(KeyEvent arg0) {
                // TODO Auto-generated method stub
                System.out.println("R"+arg0);
            }
        });

        while (!shell.isDisposed()) {
            if (!display.readAndDispatch()) {
                display.sleep();
            }
        }
        display.dispose();
    }
}

After executed, I get ctrl + a is that sequence show below:
ctrl
KeyEvent{Shell {} time=43966931 data=null character='\0'
keyCode=262144 stateMask=0 doit=true}
KeyEvent{Shell {} time=43969054 data=null character=' '
keyCode=97 stateMask=262144 doit=true}
KeyEvent{Shell {} time=43969184 data=null character=' '
keyCode=97 stateMask=262144 doit=true}
KeyEvent{Shell {} time=43972899 data=null character='\0'
keyCode=262144 stateMask=262144 doit=true}

3rd, 4th have invisible char is '\u0001'.

Having that information I do a ctrl + a Key Event well.



Back to the top