A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 李玉生 中级黑马   /  2012-10-1 08:24  /  1997 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

         
    测试按钮和画布的鼠标事件,包括单击、按下、进入和退出等。鼠标事件的演示附件所示。源程序代码如下:
//程序文件名UseMouseEvent.java
public class UseMouseEvent extends Applet implements MouseListener, MouseMotionListener
{
Button btn;
       public void init()
       {
               btn = new Button("演示鼠标事件");
               add(btn);
               //给按钮添加鼠标事件和鼠标移动事件
               btn.addMouseListener(this);
               btn.addMouseMotionListener(this);
               //给画布添加鼠标事件和鼠标移动事件
               this.addMouseListener(this);
               this.addMouseMotionListener(this);
       }
//单击事件
public void mouseClicked(MouseEvent e)
{
       Point p = new Point();
       if(e.getSource() == btn)
       {
              if(e.getClickCount() == 1)
              {
                     btn.setLabel("单击鼠标");
              }
              else if(e.getClickCount() == 2)
              {
                     btn.setLabel("双击鼠标");
              }
}
       else
       {
              if(e.getClickCount() == 1)
              {
                     p = e.getPoint();
                     showStatus(p.x + "" + p.y + "单击鼠标");
              }
              else if(e.getClickCount() == 2)
              {
                     p = e.getPoint();
                     showStatus(p.x + "" + p.y + "双击鼠标");
       }
     }
}
//进入事件
public void mouseEntered(MouseEvent e)
{
       if(e.getSource() == btn)
              btn.setLabel("进入Button");
       else
              showStatus("进入Applet");
}
public void mouseExited(MouseEvent e)
{
       if(e.getSource() == btn)
              btn.setLabel("退出Button");
else
              showStatus("退出Applet");
}
//按下事件
public void mousePressed(MouseEvent e)
{
       if(e.getSource() == btn)
              btn.setLabel("按下鼠标");
       else
              showStatus("按下鼠标");
       }
       //释放事件
       public void mouseReleased(MouseEvent e)
       {
if(e.getSource() == btn)
              btn.setLabel("松开鼠标");
       else
              showStatus("松开鼠标");
}
//移动事件
public void mouseMoved(MouseEvent e)
{
       if(e.getSource() == btn)
             btn.setLabel("移动鼠标");
       else
             showStatus("移动鼠标,新位置" + e.getX() + "" + e.getY());
       }
//拖动事件
       public void mouseDragged(MouseEvent e)
       {
              if(e.getSource() == btn)
                     btn.setLabel("拖动鼠标");
              else
                     showStatus("拖动鼠标");
       }
};

测试按钮和画布的鼠标事件.PNG (72.2 KB, 下载次数: 27)

测试按钮和画布的鼠标事件.PNG

评分

参与人数 1技术分 +1 收起 理由
刘芮铭 + 1 国庆快乐

查看全部评分

1 个回复

倒序浏览
谢谢刘哥加分,国庆快乐
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马