SWT – MouseListener & MouseAdapter Example
MouseListener
Mouse event processing is easy to implement, we need to implement MouseListener interface and declare all the interface methods.
We can attached the MouseListener to a widget with addMouseListener() method.
"widget control".addMouseListener(new MouseListener() { public void mouseDown(MouseEvent e) { System.out.println("Mouse Down."); } public void mouseUp(MouseEvent e) { System.out.println("Mouse Up."); } public void mouseDoubleClick(MouseEvent e) { System.out.println("Mouse Double click."); } });
Here is the full source code.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | mport org.eclipse.swt.SWT; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.events.MouseListener; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class SWTMouseListener { public static void main (String [] args) { Display display = new Display (); Shell shell = new Shell(display); //push button Button pushButton = new Button(shell, SWT.PUSH); pushButton.setLocation(50, 50); pushButton.setText("Im a Push Button"); pushButton.pack(); pushButton.addMouseListener(new MouseListener() { public void mouseDown(MouseEvent e) { System.out.println("Mouse Down."); } public void mouseUp(MouseEvent e) { System.out.println("Mouse Up."); } public void mouseDoubleClick(MouseEvent e) { System.out.println("Mouse Double click."); } }); shell.setSize(500,500); shell.open (); while (!shell.isDisposed ()) { if (!display.readAndDispatch ()) display.sleep (); } display.dispose (); } } |
MouseAdapter
Sometime we only need a double clicks method in mouse event, but we implement MouseListener interface, we have to declare all interface methods. Here MouseAdapter come in place, with MouseAdapter , it gives all MouseListener a default implementation, we only need to declare the method we want to use.
We can attached the MouseAdapter to a widget with addMouseListener() method as well.
"widget control".addMouseListener(new MouseAdapter() { public void mouseDoubleClick(MouseEvent e) { System.out.println("Mouse Double click."); } });
Here is the full source code.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | import org.eclipse.swt.SWT; import org.eclipse.swt.events.MouseAdapter; import org.eclipse.swt.events.MouseEvent; import org.eclipse.swt.widgets.Button; import org.eclipse.swt.widgets.Display; import org.eclipse.swt.widgets.Shell; public class SWTMouseAdapter { public static void main (String [] args) { Display display = new Display (); Shell shell = new Shell(display); //push button Button pushButton = new Button(shell, SWT.PUSH); pushButton.setLocation(50, 50); pushButton.setText("Im a Push Button"); pushButton.pack(); pushButton.addMouseListener(new MouseAdapter() { public void mouseDoubleClick(MouseEvent e) { System.out.println("Mouse Double click."); } }); shell.setSize(500,500); shell.open (); while (!shell.isDisposed ()) { if (!display.readAndDispatch ()) display.sleep (); } display.dispose (); } } |
- Java Core Technology - Java RegEx, Java XML, Java I/O, Java Misc
- J2EE Frameworks - Hibernate, Spring 2.5, Spring MVC, Struts 1.x, Struts 2.x
- Build Tools - Maven, Archiva
- Unit Test - jUnit, TestNG
- Client Scripts - jQuery