[英]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.