美文网首页首页投稿(暂停使用,暂停投稿)
15.3-全栈Java笔记:MouseEvent事件类型可以实现

15.3-全栈Java笔记:MouseEvent事件类型可以实现

作者: 全栈JAVA笔记 | 来源:发表于2017-08-16 15:26 被阅读55次

    MouseEvent事件

    MouseEvent是鼠标事件,对应的监听器其中之一是MouseListener接口,该接口中的方法如下:

    //鼠标点击时

    publicvoidmouseClicked(MouseEventme);

    //鼠标进入时

    publicvoidmouseEntered(MouseEventme);

    //鼠标离开时

    publicvoidmouseExited(MouseEventme);

    //鼠标按下时

    publicvoidmousePressed(MouseEventme);

    //鼠标释放时

    publicvoidmouseReleased(MouseEvent me);

    因为大部分监听类中包含多个方法,我们要根据具体需求选择覆盖其中某个或某些方法,比如:在登录界面中,如果用户姓名的文本框中有默认文本,我们希望鼠标点击后文本消失,则使用鼠标点击事件。

    首先我们需要在LoginFrame类中的init( )方法中增加给文本框设置默认文本和添加监听的方法,如示例1所示。

    【示例1】MouseEvent事件—LoginFrame类中新增代码

    //在用户姓名的文本框中添加默认文本

    txtUserName.setText("请输入用户姓名");

    //在用户姓名的文本框上添加鼠标事件

    txtUserName.addMouseListener(newLoginFrame_txtUserName_MouseListener(this));

    【示例2】MouseEvent事件—单击文本框监听类

    packagecn.sxt.mouseevent.listeners;

    importjava.awt.event.MouseEvent;

    importjava.awt.event.MouseListener;

    importcn.sxt.mouseevent.views.LoginFrame;

    /**

    *清空文本框功能监听类

    *@author高淇

    */

    publicclassLoginFrame_txtUserName_MouseListenerimplementsMouseListener {

    privateLoginFramelf;

    publicLoginFrame_txtUserName_MouseListener(LoginFramelf) {

    this.lf=lf;

    }

    @Override

    publicvoidmouseClicked(MouseEvente) {

    //将登陆界面中的用户姓名文本框中的文本清除

    this.lf.getTxtUserName().setText("");

    }

    @Override

    publicvoidmousePressed(MouseEvente) {

    }

    @Override

    publicvoidmouseReleased(MouseEvente) {

    }

    @Override

    publicvoidmouseEntered(MouseEvente) {

    }

    @Override

    publicvoidmouseExited(MouseEvente) {

    }

    }

    执行结果如图所示:

    图MouseEvent事件运行效果图

    由以上两个案例可见,我们做事件时,先要确定事件源,在事件源上添加事件监听程序,在事件监听类中的相应方法中添加业务逻辑。其他事件流程一样,以下不再赘述。

    MouseEvent 其它监听

    MouseEvent也可以对应鼠标运动事件,对应监听器是MouseMotionListener接口,其中方法如下:

    //鼠标移动时

    publicvoidmouseMoved(MouseEventme);

    //鼠标拖动时

    publicvoidmouseDragged(MouseEvent me);


    「全栈Java笔记」是一部能帮大家从零到一成长为全栈Java工程师系列笔记。笔者江湖人称 Mr. G,10年Java研发经验,曾在神州数码、航天院某所研发中心从事软件设计及研发工作,从小白逐渐做到工程师、高级工程师、架构师。精通Java平台软件开发,精通JAVAEE,熟悉各种流行开发框架。

    笔记包含从浅入深的六大部分:

    A-Java入门阶段

    B-数据库从入门到精通

    C-手刃移动前端和Web前端

    D-J2EE从了解到实战

    E-Java高级框架精解

    F-Linux和Hadoop

    相关文章

      网友评论

        本文标题:15.3-全栈Java笔记:MouseEvent事件类型可以实现

        本文链接:https://www.haomeiwen.com/subject/abmirxtx.html