SWT Java Tutorial

import org.eclipse.swt.SWT;
import org.eclipse.swt.custom.StyledText;
import org.eclipse.swt.custom.VerifyKeyListener;
import org.eclipse.swt.events.VerifyEvent;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
public class StyledTextArrowKeyVerifyKeyListener {
  public static void main(String[] args) {
    final Display display = new Display();
    final Shell shell = new Shell(display);
    StyledText styledText = new StyledText(shell, SWT.V_SCROLL | SWT.BORDER);
    styledText.setText("12345");
    styledText.addVerifyKeyListener(new VerifyKeyListener() {
      public void verifyKey(VerifyEvent event) {
        System.out.println(event.character);
        event.doit = false;
        // Allow arrow keys
        if (event.keyCode == SWT.ARROW_UP || event.keyCode == SWT.ARROW_DOWN
          || event.keyCode == SWT.ARROW_LEFT || event.keyCode == SWT.ARROW_RIGHT)
          event.doit = true;
      }
    });
    styledText.setBounds(10, 10, 100, 100);
    shell.open();
    while (!shell.isDisposed()) {
      if (!display.readAndDispatch()) {
        display.sleep();
      }
    }
    display.dispose();
  }
}