赛迪网 > IT技术 Java > 技术动态
  IT资讯搜索
 
IT产品搜索
[程序开发][网管世界][网络安全][数据库技术]
[操作系统][嘉宾聊天·在线访谈][活动集锦]
[精彩专题][Symantec专区][订阅IT技术周刊]
[开发论坛][网管论坛][安全论坛][数据库论坛]
[操作系统论坛][Sybase专区][IBM dW技术专区]
[病毒求助][病毒与漏洞播报][文档·源码下载]

Java基础:看看流行的和过时的鼠标事件 (1)

发布时间:2007.03.23 17:08     来源:javaworld    作者:Tony Sintes

MouseListener 方法接口中的mouseClicked() 方法和mousePressed() 方法有什么区别?

这是一个热门的话题,让我们来深入的找寻答案,Java’s AWT 库提供了两个接口来监听和接收鼠标事件. 一个是 java.awt.event.MouseListener:

  
  
  public interface MouseListener extends EventListener 
  
  { 
  
  public void mousePressed(MouseEvent e); 
  
  public void mouseReleased(MouseEvent e); 
  
  public void mouseClicked(MouseEvent e); 
  
  public void mouseEntered(MouseEvent e); 
  
  public void mouseExited(MouseEvent e); 
  
  }

  

另一个是 java.awt.event.MouseMotionListener:

  
  
  public interface MouseMotionListener extends EventListener 
  
  { 
  
  public void mouseDragged(MouseEvent e); 
  
  public void mouseMoved(MouseEvent e); 
  
  }

  

Swing 提供了 MouseInputListener, 这个接口的同时扩展了MouseMotionListener 和MouseListener 接口.

  

让我们来看看这些接口中的方法:

・ mousePressed() 当用户按下鼠标按钮时发生.  

・ mouseReleased() 当用户松开鼠标按钮时发生.

・ mouseClicked() 当用户按下并松开鼠标按钮时发生. 用户在选择或双击图标的时候通常会点击鼠标按钮. 用户如果在松开鼠标之前移动鼠标,点击不会导致鼠标相应事件出现.  

・ 因为点击鼠标是按下鼠标和松开鼠标的结合, 在事件分配给 mouseClicked() 方法之前, mousePressed() 和 mouseReleased() 方法已同时被调用.  

・ mouseEntered() 当鼠标离开当前组件并进入你所监听的组件时激活事件.

・ mouseExited() 当鼠标离开你所监听的组件时发生.  

・ mouseDragged() 当用户按下鼠标按钮并在松开之前进行移动时发生.在mouseDragged() 后松开鼠标不会导致mouseClicked().  

・ mouseMoved() 当鼠标在组件上移动而 不时拖动时发生.

 

要监听鼠标事件就必须调用这些接口之一,或扩展一个鼠标适配器(mouse adapters) 类. AWT 提供了两种监听适配器(listener adapters): java.awt.event.MouseAdapter 和java.awt.event.MouseMotionAdapter.

Swing 为MouseInputListener提供了一个叫做javax.swing.event.MouseInputAdapter的适配器. 有了适配器你就不必调用接口中每个方法了. 取而代之, 你只需简单的扩展适配器并重写你要监听的方法就可以了.

1 2 下一页>>


[ 发表评论 ] 字体[  ] [ 打印 ] [ 进入博客 ] [ 进入论坛 ]  [ 推荐给朋友 ]
  相关文章
· Java IO学习基础之读写文本文件(示例) (03-23) · 通过JRockit提高Linux Java性能分析 (01-30)
· 面向入门级用户 方正家用型PC不足5K (01-11) · 在Ubuntu Linux上安装Java和Eclipse (01-08)
· PL/SQL和Java开发Oracle8i应用程序 (12-30) · 看清指标 教你如何选择入门级投影机 (12-28)
· 卡片单反齐跳水 尼康全线降价导购 (11-30) · 商业周刊:处于意料之中的Java开源 (11-15)
· Sun免费推广Java 明年3月前公开全部源代码 (11-14) · Java开发源码如何在项目中深入运用 (11-06)
  客户需求反馈表
* 姓  名:
更多资料  了解方案  认识厂商
* 单位名称:
* 联系电话:
* 电子邮件:
  赛迪推荐  
  手机·资费 ·新品·导购·评测·手机资费·宽带
手机搜索  诺基亚 N73 MOTO Z6
  IT产品 ·笔记本·台式机·服务器·打印·投影
IT产品搜索 
  IT技术 ·开发·网管·安全·数据库·操作系统
  信息化 ·热点·专题·访谈·周刊·方案案例
· 移动信息化市场方兴未艾 企业呼唤标准出台
· 如何把握企业价值差异 避免CRM与SCM脱节
· 齐看四大厂商的SaaS动态 ERP案例分析
· 通方期货CRM解决方案 方正电子公文系统
  IT博客 ·曾剑秋·项立刚·Java学习·网管
  IT技术论坛 ·开发·网管·安全·数据库·系统