SWT – MouseListener和MouseAdapter示例

鼠标监听器

鼠标事件处理很容易实现,我们需要实现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 ();
}
}

鼠标适配器

有时,在鼠标事件中我们只需要双击方法,但是我们实现了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 ();
}
}

翻译自: https://mkyong.com/swt/swt-mouselistener-mouseadapter-example/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值