E
error007
Gast
Hallo!
Wenn ich mein Programm ausführe, dann öffnet sich zwar das Fenster mit dem Reaktionsbutton, aber es kommt in der Console unten folgender Fehler(Compiler-Fehler oder?):
Java-Code:
Die anderen Programm haben immer funktioniert, nur hier auf einmal kommt so ein komischer Text, den ich noch nie hatte.
PS:Wenn ihr weitere Infos bzw. die 2. .java Datei braucht, sagen bitte.
mfg
Wenn ich mein Programm ausführe, dann öffnet sich zwar das Fenster mit dem Reaktionsbutton, aber es kommt in der Console unten folgender Fehler(Compiler-Fehler oder?):
Code:
java.lang.NullPointerException
at uebung002_reaction.MainFrame.getRand(MainFrame.java:63)
at uebung002_reaction.MainFrame.FrameInit(MainFrame.java:57)
at uebung002_reaction.MainFrame.<init>(MainFrame.java:25)
at uebung002_reaction.Application.<init>(Application.java:12)
at uebung002_reaction.Application$1.run(Application.java:38)
at java.awt.event.InvocationEvent.dispatch(Unknown Source)
at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
at java.awt.EventQueue.access$200(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.awt.EventQueue$3.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Java-Code:
Java:
//MainFrame.java
package uebung002_reaction;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.util.*;
public class MainFrame extends JFrame {
private static final int BEGIN = 400;
private static final int OFFSET = 300;
private JPanel contentPane;
private JPanel panel_react;
private JButton button_react;
private javax.swing.Timer timer;
private Random random;
private JLabel text;
private long starttime;
private boolean started = false;
public MainFrame() {
try {
setDefaultCloseOperation(EXIT_ON_CLOSE);
FrameInit();
}
catch (Exception exception) {
exception.printStackTrace();
}
}
/**
* Component initialization.
*
* @throws java.lang.Exception
*/
private void FrameInit() throws Exception {
contentPane = (JPanel) getContentPane();
contentPane.setLayout(new BorderLayout());
setSize(new Dimension(400, 300));
setTitle("Frame Title");
panel_react = new JPanel();
button_react = new JButton("Reaktionstaste: Start");
text = new JLabel();
panel_react.setLayout(new FlowLayout());
panel_react.setBackground(Color.GREEN);
panel_react.add(button_react);
panel_react.add(text, BorderLayout.SOUTH);
button_react.setFont(new Font("Arial",Font.BOLD,30));
contentPane.add(panel_react);
button_react.addActionListener(new Button_Listener());
timer = new javax.swing.Timer(getRand(), new Timer_Listener());
random = new Random();
}
private int getRand() {
return(random.nextInt(BEGIN) + OFFSET);
}
public void buttonHandler() {
if(!started)
{
timer.start();
started = true;
button_react.setText("PRESS");
}
else
{
long react_time = System.currentTimeMillis() - starttime;
button_react.setEnabled(false);
show_value(react_time);
timer.setInitialDelay(getRand());
}
}
private void changeColor() {
if(panel_react.getBackground() == Color.GREEN)
{
panel_react.setBackground(Color.RED);
}
else
{
panel_react.setBackground(Color.GREEN);
}
}
private void show_value(long time_value) {
text.setText("Reaktionszeit:" + time_value);
}
private void timerHandler() {
changeColor();
starttime = System.currentTimeMillis();
}
private class Button_Listener implements ActionListener {
public void actionPerformed(ActionEvent ae) {
buttonHandler();
}
}
private class Timer_Listener implements ActionListener {
public void actionPerformed(ActionEvent ae) {
timerHandler();
}
}
}
Die anderen Programm haben immer funktioniert, nur hier auf einmal kommt so ein komischer Text, den ich noch nie hatte.
PS:Wenn ihr weitere Infos bzw. die 2. .java Datei braucht, sagen bitte.
mfg