MouseListener
マウスイベント処理は簡単に実装できます.MouseListenerインタフェースを実装し、すべてのインタフェースメソッドを宣言する必要があります。
addMouseListener()メソッドを使用してMouseListenerをウィジェットにアタッチできます。
"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.");
}
});
ここに完全なソースコードがあります。
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
マウスイベントではダブルクリックメソッドが必要ですが、MouseListenerインターフェイスを実装すると、すべてのインターフェイスメソッドを宣言する必要があります。ここでは、MouseAdapterが適切な位置に配置されます.MouseAdapterを使用すると、すべてのMouseListenerにデフォルトの実装が提供されます。使用するメソッドを宣言するだけで済みます。
addMouseListener()メソッドを使ってMouseAdapterをウィジェットにアタッチすることもできます。
"widget control".addMouseListener(new MouseAdapter()
{
public void mouseDoubleClick(MouseEvent e)
{
System.out.println("Mouse Double click.");
}
});
ここに完全なソースコードがあります。
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 ();
}
}