SWT - MouseListener

SWT - MouseListener & MouseAdapter Beispiel

MouseListener

Die Verarbeitung von Mausereignissen ist einfach zu implementieren. Wir müssen die MouseListener-Schnittstelle implementieren und alle Schnittstellenmethoden deklarieren.

Wir können den MouseListener mit der Methode addMouseListener () an ein Widget anhängen.

    "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.");
        }

    });

Hier ist der vollständige Quellcode.

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 ();
}
}

Mausadapter

Manchmal brauchen wir nur eine Doppelklickmethode im Mausereignis, aber wir implementieren die MouseListener-Schnittstelle, wir müssen alle Schnittstellenmethoden deklarieren. Hier kommt MouseAdapter zum Einsatz. Mit MouseAdapter erhalten alle MouseListener eine Standardimplementierung. Wir müssen nur die Methode deklarieren, die wir verwenden möchten.

Wir können den MouseAdapter auch mit der Methode addMouseListener () an ein Widget anhängen.

    "widget control".addMouseListener(new MouseAdapter()
    {
        public void mouseDoubleClick(MouseEvent e)
        {
            System.out.println("Mouse Double click.");
        }

    });

Hier ist der vollständige Quellcode.

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 ();
}
}