Не работает 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(); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д