| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1195 人关注过本帖
标题:如何使用Timer类?
只看楼主 加入收藏
mickboy
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2007-1-11
收藏
 问题点数:0 回复次数:12 
如何使用Timer类?

如何创建一个java.swing.Timer类的不停调用的啊?比如我点击开始的按钮,然后系统通过该事件不停的调用一句话,或者是一段代码?

搜索更多相关主题的帖子: Timer 
2007-02-04 18:06
Java
Rank: 1
等 级:新手上路
帖 子:718
专家分:0
注 册:2007-1-29
收藏
得分:0 

传入一个ActionListener就可以了

具体看看API,很详细的


Java,My Love!
2007-02-04 18:11
mickboy
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2007-1-11
收藏
得分:0 
谢谢了!我来试试
2007-02-04 18:25
dingoo
Rank: 1
等 级:新手上路
帖 子:82
专家分:0
注 册:2006-10-10
收藏
得分:0 

先创建ActionListener接口与一个Timer的对像,如Timer t=new Timer(1000,this),覆盖public void actionPerformed(ActionEvent e){}方法.
如public void actionPerformed(ActionEvent e){
if(e.getSource()==timer){
System.out.println("Hello World!");
}
}
然后只要在按钮的监听里实现t.start()方法就行了.
或者你也可以不用Timer类,自已单独弄一个线程来实现这个功能.
基本上是这样的,你自己再试试看吧...


2007-02-04 18:27
mickboy
Rank: 1
等 级:新手上路
帖 子:60
专家分:0
注 册:2007-1-11
收藏
得分:0 

还是这个问题,我在匿名类里面实现了启动,但是我用另外一个按钮来停止它,停止不住
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class Tim extends JFrame{
JPanel pnl;
JButton btn1=new JButton("开始");
JButton btn2=new JButton("停止");
FlowLayout flowLayout=new FlowLayout();
Timer obj;

Tim(){
super("Timer");
men();
action();
}
void men(){
pnl=(JPanel)getContentPane();
pnl.setLayout(flowLayout);
setSize(new Dimension(400,300));
pnl.add(btn1);
pnl.add(btn2);
this.setVisible(true);
}
void action(){
btn1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
obj=new Timer(5000,this);
obj.start();
System.out.println("aaaaaaaaaaaaaaaa");
}
});
btn2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
obj.stop();//说我这个obj必须声明为最终类型,我对这个词不理解,不知道什么意思,obj=new Timer(5000,this);如何把这个obj对象传到下面来啊?

}
});
}
public static void main(String[] args){
Tim obj=new Tim();
}
}

2007-02-04 19:42
wuzhong
Rank: 1
等 级:新手上路
帖 子:233
专家分:0
注 册:2006-10-23
收藏
得分:0 
给你看看.等会.

2007-02-04 21:47
scoladi
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-2-3
收藏
得分:0 


package tim;

/****************************
* 网络.测试timer类的用法.
*
***************************/

import javax.swing.*;
import java.awt.*;
import java.awt.event.*;

class Tim extends JFrame{
JPanel pnl;
JButton btn1=new JButton("开始");
JButton btn2=new JButton("停止");
FlowLayout flowLayout=new FlowLayout();
Timer obj;
Tim(){
super("Timer");
obj=new Timer(50,new ActionListener()
{ /**********************************/
public void actionPerformed(ActionEvent e)//在此处写上其的监听者,此处进行定义想要做的事
{ /**********************************/
System.out.println("aaaaaaaaaaaaaaaa");
}
});
men();
action();
}
void men(){
pnl=(JPanel)getContentPane();
pnl.setLayout(flowLayout);
setSize(new Dimension(400,300));
pnl.add(btn1);
pnl.add(btn2);
this.setVisible(true);
}
void action(){
/*btn1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
/*****************************/
/* obj=new Timer(5000,this);//用法不错,把其放于其的监听者之内了
/****************************/
/* obj.start();
System.out.println("aaaaaaaaaaaaaaaa");
}
});*/
btn1.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
/*******************************/
obj.start();//在此处开始其计时器的工作. 开始操作
/******************************/
}
});
btn2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
/***********************/
obj.stop();//在此处进行结束其计时器的结束. 结束操作
/***********************/
dispose();
}
});
}
public static void main(String[] args){
Tim obj=new Tim();
}
}


[此贴子已经被作者于2007-2-4 23:05:23编辑过]


Java与你共枕.
2007-02-04 22:16
scoladi
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-2-3
收藏
得分:0 
使用Eclipse
http://www.eclipse.org/
java与你共枕.

Java与你共枕.
2007-02-04 22:20
scoladi
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-2-3
收藏
得分:0 
//说我这个obj必须声明为最终类型,我对这个词不理解,不知道什么意思,obj=new Timer(5000,this);如何把这个obj对象传到下面来啊?
why?

Java与你共枕.
2007-02-04 22:23
scoladi
Rank: 1
等 级:新手上路
帖 子:37
专家分:0
注 册:2007-2-3
收藏
得分:0 

btn2.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
obj.stop();
dispose();//加上好些.
}
});

[此贴子已经被作者于2007-2-4 23:00:40编辑过]


Java与你共枕.
2007-02-04 22:25
快速回复:如何使用Timer类?
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.017435 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved