[英]Need help to stop my Java Swing GUI timer?
我想通过单击按钮来启动和停止我的计时器。 但是停止按钮不起作用。 我应该如何解决这个问题?
我正在开发一个包含计时器和其他功能的项目。 我想做的就是使用按钮启动和停止我的计时器。
导入 javax.swing.Timer;
JButton startbut=new JButton("Start");
JButton endbut=new JButton("Mark As Done");
private void addActionEvent() {
// TODO Auto-generated method stub
startbut.addActionListener(this);
}
int s=0,h=0;
@Override
public void actionPerformed(ActionEvent e) {
if(e.getSource()==startbut) {
t=new Timer(100, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
time.setText(String.valueOf(h+"m:"+s+"s"));
s++;
if(s==60) {
h++;
s=0;
}
}
});
t.start();
}
if(e.getSource()==endbut) {
t.stop();
}
}
提前致谢。
问题是 endbut 没有动作监听器,所以当按钮被点击时什么也没有发生 t.stop(); 从来没有接到电话。 我们需要注册 endbut 到同一个动作监听器,这样当它被点击时 actionPerformed 被调用(t.stop)
endbut.addActionListener(this);
后
// TODO Auto-generated method stub
startbut.addActionListener(this);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.