java鼠标点击事件_JavaSE 鼠标事件类(MouseEvent)实现

{相关信息}

鼠标事件类(MouseEvent)指组件中发生的鼠标动作事件,例如按下鼠标、释放鼠标、单击鼠标、鼠标光标进入或离开组件的几何

图形、移动鼠标、拖动鼠标。当鼠标移动到某个区域或鼠标单击某个组件时就会触发鼠标事件。使用鼠标事件必须给组件添加一个MouseListener

接口的事件处理器,该接口包含以下 5 个方法:

void mouseClicked(MouseEvent e):当鼠标在该区域单击时发生

void mouseEntered(MouseEvent e):当鼠标进入该区域时发生

void mouseExited(MouseEvent e):当鼠标离开该区域时发生

void mousePressed(MouseEvent e):当鼠标在该区域按下时发生

void mouseReleased(MouseEvent e):当鼠标在该区域放开时发生

{实现效果图}

实验过程中,在panel区,明显可以看出单击可按下的区别。按一下马上松开是一个点击,获取一次位置信息。

如果按下不松开,移动后一会儿,再松开,不会获取位置信息。

b248c812bb8e77a4383256e44255e8d8.png

{相关代码}

packagesup.orange.learn;import java.awt.*;importjava.awt.event.MouseEvent;importjava.awt.event.MouseListener;importjava.awt.event.WindowAdapter;importjava.awt.event.WindowEvent;/*** Created by re-x on 11/2/14.*/

public class MouseEventDemo extendsFrame {

Panel panel;

TextField textfield1, textfield2;publicMouseEventDemo () {super();

init();

}public static voidmain(String[] args) {newMouseEventDemo();

}public voidinit() {

setLayout(new GridLayout(3, 1));

textfield1= new TextField(30);

textfield2= newTextField();

add(textfield1);

add(textfield2);

panel= newPanel();

panel.setBackground(Color.CYAN);

add(panel);

panel.addMouseListener(newMouseListener() {

@Overridepublic voidmouseClicked(MouseEvent e) {

textfield2.setText("x="+e.getX()+";y="+e.getY());

}

@Overridepublic voidmousePressed(MouseEvent e) {

textfield1.setText("mouse pressed");

}

@Overridepublic voidmouseReleased(MouseEvent e) {

textfield1.setText("mouse released");

}

@Overridepublic voidmouseEntered(MouseEvent e) {

textfield1.setText("mouse entered");

}

@Overridepublic voidmouseExited(MouseEvent e) {

textfield1.setText("mouse exited");

}

});

addWindowListener(newWindowAdapter() {

@Overridepublic voidwindowClosing(WindowEvent e) {super.windowClosing(e);

dispose();

System.exit(0);

}

});

setSize(200, 300);

setVisible(true);

}

}

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值