Не работает Timer, почему? - Java
Формулировка задачи:
Доброго времени суток. Никак не могу понять в чем проблема с моим таймером. Пишу на swing (так вышло). При нажатии на кнопку вылазит такая серия ошибок.
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at deadplom.DEAD$18.actionPerformed(DEADPLOM.java:306)
at javax.swing.Timer.fireActionPerformed(Timer.java:313)
at javax.swing.Timer$DoPostEvent.run(Timer.java:245)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:311)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:756)
at java.awt.EventQueue.access$500(EventQueue.java:97)
at java.awt.EventQueue$3.run(EventQueue.java:709)
at java.awt.EventQueue$3.run(EventQueue.java:703)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:726)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:201)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:116)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:82)
import java.awt.Label;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.Timer;
@SuppressWarnings("uncheked")
Timer t1;
int i=0;
//private JButton button;
private JLabel label;
private void Timer1ActionPerformed(java.awt.event.ActionEvent evt) {
t1 = new Timer(1000, new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
label.setText("text :" + i);
i++;
}
});
t1.start();
}
}
private void StopTimer1ActionPerformed(java.awt.event.ActionEvent evt) {
t1.stop();
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(new Runnable() {
public void run() {
new DEAD().setVisible(true);
}
});
}Решение задачи: «Не работает Timer, почему?»
textual
Листинг программы
stopTimerButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent event) {
timer.stop();
}
}