My FAQ,最新最全的IT技术教程
最新100篇 | 推荐100篇 | 专题100篇 | 排行榜 | 搜索 | 在线API文档
首 页 | 程序开发 | 操作系统 | 软件应用 | 图形图象 | 网络应用 | 精文荟萃 | 教育认证 | 硬件维护 | 未整理篇 | 站长教程
ASP JS PHP工程 ASP.NET 网站建设 UML J2EESUN .NET VC VB VFP 网络维护 数据库 DB2 SQL2000 Oracle Mysql
服务器 Win2000 Office C DreamWeaver FireWorks Flash PhotoShop 上网宝典 CorelDraw 协议大全 网络安全 微软认证
硬件维护  CPU  主板  硬盘  内存  显卡  显示器  键盘鼠标  声卡音箱  打印机  机箱电源  BIOS  网卡  C#  Java  Delphi  vs.net2005
  当前位置:> 程序开发 > 编程语言 > Java > Applets
Java Swing中使用双击事件
作者:未知 时间:2004-12-22 12:12 出处:CSDN 责编:MyFAQ
              摘要:暂无

  今天自己写个小程序碰到了这个问题,在网上搜了一下人家的思路,整理了一下代码可以运行,感觉不错!

  直接在JBuilder中新建一个应用程序,至于具体步骤就不描述了,此代码没有main函数无法直接运行。下面我贴出在Frame1中的代码:




  import java.awt.*;
  import java.awt.event.*;
  import javax.swing.*;
  import com.borland.jbcl.layout.*;
  import java.util.Date;

  public class Frame1
  extends JFrame {
  JPanel contentPane;
  BorderLayout borderLayout1 = new BorderLayout();
  JPanel jPanel1 = new JPanel();
  XYLayout xYLayout1 = new XYLayout();
  JScrollPane jScrollPane1 = new JScrollPane();
  JList jList1 = new JList();
  //初始化的JList中的数据
  String[] strData = {
  "One", "Tow", "Three"};
  //保存点击按钮的时间
  long clickTime = 0;

  //Construct the frame
  public Frame1() {
  enableEvents(AWTEvent.WINDOW_EVENT_MASK);
  try {
  jbInit();
  }
  catch (Exception e) {
  e.printStackTrace();
  }
  }

  //Component initialization
  private void jbInit() throws Exception {
  contentPane = (JPanel)this.getContentPane();
  contentPane.setLayout(borderLayout1);
  this.setSize(new Dimension(532, 468));
  this.setTitle("Frame Title");

  jPanel1.setLayout(xYLayout1);
  jList1.addMouseListener(new Frame1_jList1_mouseAdapter(this));
  contentPane.add(jPanel1, BorderLayout.CENTER);
  jPanel1.add(jScrollPane1, new XYConstraints(18, 34, 209, 326));
  jScrollPane1.getViewport().add(jList1, null);
  jList1.setListData(strData);
  }








  //Overridden so we can exit when window is closed
  protected void processWindowEvent(WindowEvent e) {
  super.processWindowEvent(e);
  if (e.getID() == WindowEvent.WINDOW_CLOSING) {
  System.exit(0);
  }
  }

  //具体实现按钮双击的功能的方法,  很简单的算法,不做解释了
  public boolean checkClickTime() {
  long nowTime = (new Date()).getTime();

  if ( (nowTime - clickTime) < 300) {
  clickTime = nowTime;
  return true;
  }
  clickTime = nowTime;
  return false;

  }

  void jList1_mouseReleased(MouseEvent e) {
  //判断是否双击,是的话写你要实现的功能
  if (checkClickTime()) {
  System.out.println("Click Double");

  }
  }
  }

  class Frame1_jList1_mouseAdapter
  extends java.awt.event.MouseAdapter {
  Frame1 adaptee;

  Frame1_jList1_mouseAdapter(Frame1 adaptee) {
  this.adaptee = adaptee;
  }

  public void mouseReleased(MouseEvent e) {
  adaptee.jList1_mouseReleased(e);
  }
  }




关闭本页
 
首页 | 投资与合作 | 服务条款 | 隐私政策 | 收藏本站 | 设为首页 | 新用户注册 | 免责声明 | 使用帮助
Copyright ©2005-2008 myfaq.com.cn All rights reserved. www.myfaq.com.cn 版权所有