鼠标的中键,左键,右键,坐标的位置,记录坐标的位置
代码实现,采用的匿名内部类的方法:
package fangfa.com;
import java.awt.BorderLayout;
import java.awt.Label;
import java.awt.event.MouseEvent;
import java.awt.event.MouseListener;
import java.awt.event.MouseMotionAdapter;
import javax.swing.JFrame;
import javax.swing.JTabbedPane;
import javax.swing.JTextArea;
import fangfa.com.Dir.ZouYe;
public class ZuoYe0 {
private JFrame jf;//窗体
private Label label;//显示鼠标当前的位置
private JTextArea jta;//输出鼠标的当前位置
public ZuoYe0() {
jf = new JFrame("鼠标点击事件");
jf.setLayout(new BorderLayout());
label = new Label(" ");
jta = new JTextArea(50,50);
jf.setLayout(new BorderLayout());
jf.add(label,BorderLayout.NORTH);
jf.add(jta,BorderLayout.CENTER);
jta.addMouseListener(new MouseListener() {
@Override
public void mouseExited(MouseEvent e) {
jta.append("我来了"+"\n");
}
@Override
public void mouseEntered(MouseEvent e) {
jta.append("我走了"+"\n");
}
@Override
public void mouseClicked(MouseEvent e) {
String str = null;
switch (e.getButton()) {
case MouseEvent.BUTTON1:str = "左边";
break;
case MouseEvent.BUTTON2:str = "中";
break;
case MouseEvent.BUTTON3:str = "右边";
break;
default:
throw new IllegalArgumentException("Unexpected value: " + e.getButton());
}
jta.append("鼠标"+str+"键被点击("+e.getX()+","+e.getY()+")"+"\n");
}
@Override
public void mousePressed(MouseEvent e) {
// TODO Auto-generated method stub
}
@Override
public void mouseReleased(MouseEvent e) {
// TODO Auto-generated method stub
}
});
jta.addMouseMotionListener(new MouseMotionAdapter() {
public void mouseMoved(MouseEvent e) {
label.setText("("+e.getX()+","+e.getY()+")");
}
});
jf.setSize(300,300);
jf.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);//实现窗口的真正关闭
jf.setVisible(true);
}
public static void main(String[] args) {
ZuoYe0 setYe0 = new ZuoYe0();
}
}
本文介绍了一个Java程序,该程序使用匿名内部类的方法来监听鼠标事件,并记录鼠标点击的详细信息,包括左键、中键、右键的点击以及鼠标在屏幕上的实时坐标位置。通过实例演示了如何在JTextArea组件上实现鼠标点击事件的监听和响应,以及如何在Label组件上显示鼠标当前位置。
389

被折叠的 条评论
为什么被折叠?



