• JAVA鼠标监听器


    1 package howework_07;
    2 public class Example9_10 {
    3     public static void main(String args[]) {
    4             WindowMouse win=new WindowMouse();
    5             win.setTitle("处理鼠标事件");
    6             win.setBounds(100,100,460,360);
    7     }
    8 }
    主类
     1 package howework_07;
     2 import java.awt.FlowLayout;
     3 import javax.swing.JButton;
     4 import javax.swing.JFrame;
     5 import javax.swing.JScrollPane;
     6 import javax.swing.JTextArea;
     7 import javax.swing.JTextField;
     8 public class WindowMouse extends JFrame{
     9     JTextField text;
    10     JButton button;
    11     JTextArea textArea;
    12     MousePolice police;
    13     WindowMouse(){//在窗口的构造函数中把组件实例化
    14         init();
    15         setVisible(true);
    16         setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    17     }
    18     void init() {
    19         setLayout(new FlowLayout());//将面板的布局设置为FlowLayout,面板上增加的组件默认是按照从左到右顺序排列
    20         text =new JTextField(8);
    21         textArea =new JTextArea(5,28);
    22         police =new MousePolice();
    23         
    24         police.setJTextArea(textArea);
    25         
    26         text.addMouseListener(police);//事件源注册监听器
    27         button =new JButton("按钮");
    28         button.addMouseListener(police);//事件源注册监听器
    29         //向窗口中加入组件
    30         addMouseListener(police);
    31         add(button);
    32         add(text);
    33         add(new JScrollPane(textArea));//滚动条
    34     }
    35 }
    WindowMouse
     1 package howework_07;
     2 
     3 import java.awt.event.MouseEvent;
     4 import java.awt.event.MouseListener;
     5 
     6 import javax.swing.JButton;
     7 import javax.swing.JTextArea;
     8 import javax.swing.JTextField;
     9 
    10 public class MousePolice implements MouseListener{
    11     JTextArea area;//文本
    12     public void setJTextArea(JTextArea area) {
    13         this.area=area;
    14     }
    15     public void mousePressed(MouseEvent e) {
    16         area.append("
    鼠标按下,位置:"+"("+e.getX()+","+e.getY()+")");
    17     }//JTextArea中有append(),而JTextFiled中只有setText()
    18     public void mouseReleased(MouseEvent e) {
    19         area.append("
    鼠标释放,位置:"+"("+e.getX()+")"+e.getY()+")");
    20     }
    21     public void mouseEntered(MouseEvent e) {
    22         if(e.getSource() instanceof JButton) {
    23             area.append("
    鼠标进入按钮,位置:"+"("+e.getX()+","+e.getY()+")");
    24         }
    25         if(e.getSource() instanceof JTextField)
    26             area.append("
    鼠标进入文本框,位置:"+"("+e.getX()+","+e.getY()+")");
    27         if(e.getSource() instanceof JTextField)
    28             area.append("
    鼠标进入窗口,位置:"+"("+e.getX()+","+e.getY()+")");
    29     }
    30     public void mouseExited(MouseEvent e) {
    31         area.append("
    鼠标退出,位置:"+"("+e.getX()+","+e.getY()+")");
    32     }
    33     public void mouseClicked(MouseEvent e) {
    34         if(e.getClickCount()>=2) 
    35             area.setText("鼠标连击,位置:"+"("+e.getX()+","+e.getY()+")");
    36     }
    37 }
    MousePolice

     java中鼠标监听器的用法;

    首先创建一个类来实现鼠标监听器接口,然后对鼠标监听器的各种函数进行重载,以实现相关的操作。

    然后对于需要添加监听器的组件,注册监听器   ().addMouseListener( )其中第一个括号为组件,后面为鼠标监听器的一个实例化的对象。

    同时要记得把各个组件和鼠标监听器添加到窗口中。

  • 相关阅读:
    IOS获取senderTitle
    IOSSegmentedControl(添加到Nav上)的简单使用方法
    MinaService
    java nio(reactor/selector)
    Java,反射机制
    http, get, post, HttpClient
    java.util.ConcurrentModificationException
    愛上一個不該 愛的人
    how to be a good ladyprogrammer?
    JQuery(那个夏日的午后)
  • 原文地址:https://www.cnblogs.com/1024-xzx/p/12006777.html
Copyright © 2020-2023  润新知