JSpinner gibt leeren Wert zurück

positiv

Mitglied
Hallo zusammen,

ich habe ein Programm mit 2 JSpinner die beide Zahlen haben. der eine funktioniert auch einwandfrei, bei dem anderen wird mir im Debug Modus der Rückgabewert "null" angezeigt und dadurch startet das programm auch nicht, da ich im Laufe des programms noch einen ChangeListener habe der den Wert des JSpinners in ein int umwandelt.

Java:
JSpinner laenge;  
JSpinner anzahl;

int laenge2 = 8;
int anzahl2 = 3;

laenge = new JSpinner();
laenge.addChangeListener(this);
laenge.setValue(laenge2);
      
anzahl = new JSpinner();
anzahl.addChangeListener(this);
anzahl.setValue(anzahl2);

laenge2 = Integer.valueOf(laenge.getValue().toString()).intValue();
anzahl2 = Integer.valueOf(anzahl.getValue().toString()).intValue();

bei laenge funktioniert alles, nur bei anzahl gibt er mir dann eine NullPointerException. Meine Frage deshalb wie bekomme ich bei anzahl einen Wert?
 

positiv

Mitglied
Java:
public class Starten extends JFrame implements ActionListener, ChangeListener
{
    PWgen pwgen = new PWgen();
   
    JPanel panelButton;
    JPanel panelPasswoerter;
    JPanel panelHaken;
    JPanel panelAnzahl;
    JButton ok;
    JCheckBox gross;
    JCheckBox klein;
    JCheckBox zahlen;
    JCheckBox sonder;
    JTextArea passwort;
    JSpinner laenge;
    JSpinner anzahl;
    JScrollPane scrollPaneTA;
   
    boolean gbu;
    boolean kbu;
    boolean zah;
    boolean son;
    int laengePW = 8;
    int anzahlPW = 8;
    int einrücken;
    int schriftgroesse = 13;
    int zeilen;
    int spalten = laengePW;
    Object test;
   
    public Starten()
    {
        panelButton = new JPanel();
        panelPasswoerter = new JPanel();
        panelHaken = new JPanel();
        panelAnzahl = new JPanel();
       
        ok = new JButton("Passwort erzeugen");
        ok.addActionListener(this);
       
        gross = new JCheckBox("Großbuchstaben");
        klein = new JCheckBox("Kleinbuchstaben");
        zahlen = new JCheckBox("Zahlen");
        sonder = new JCheckBox("Sonderzeichen");
        gross.addActionListener(this);
        klein.addActionListener(this);
        zahlen.addActionListener(this);
        sonder.addActionListener(this);
   
        passwort = new JTextArea(zeilen, spalten);
        passwort.setFont(new Font("Arial", Font.PLAIN, schriftgroesse));
        passwort.setLineWrap(true);
        passwort.setWrapStyleWord(true);
        passwort.setEditable(false);
        passwort.setBackground(this.getBackground());
       
        laenge = new JSpinner();
        laenge.addChangeListener(this);
        laenge.setValue(laengePW);
       
        anzahl = new JSpinner();
        anzahl.addChangeListener(this);
        anzahl.setValue(anzahlPW);
       
        scrollPaneTA = new JScrollPane(passwort);
        scrollPaneTA.setVisible(false);
       
        panelButton.add(ok);
        panelHaken.add(gross);
        panelHaken.add(klein);
        panelHaken.add(sonder);
        panelHaken.add(zahlen);
        panelPasswoerter.add(scrollPaneTA);
        panelAnzahl.add(laenge);
        panelAnzahl.add(anzahl);
       
        this.add(panelPasswoerter, BorderLayout.CENTER);
        this.add(panelButton, BorderLayout.SOUTH);
        this.add(panelAnzahl, BorderLayout.WEST);
        this.add(panelHaken, BorderLayout.NORTH);
       
        this.setSize(600, 300);
        this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
   
    public static void main(String[] args)
    {
        Starten s = new Starten();
       
        s.setVisible(true);   
    }

    @Override
    public void actionPerformed(ActionEvent e)
    {
        if(e.getSource() == ok)
        {
            zeilen = 185;
            einrücken = laengePW * 12;
           
            scrollPaneTA.setVisible(true);
           
            scrollPaneTA.setBounds(200, 5, einrücken, zeilen);
           
            if(pwgen.HakenGesezt(gbu, kbu, zah, son) == false)
            {
                passwort.setText("Bitte Haken auswählen");
            }else{
                passwort.setBackground(Color.WHITE);
                pwgen.mehrerePW(anzahlPW, laengePW, gbu, kbu, zah, son);
                passwort.setText(pwgen.getPw());
            }
        }
       
        if(gross.isSelected()) gbu = true; else gbu = false;
        if(klein.isSelected()) kbu = true; else kbu = false;
        if(zahlen.isSelected()) zah = true; else zah = false;
        if(sonder.isSelected()) son = true; else son = false;
    }

    @Override
    public void stateChanged(ChangeEvent e)
    {
        laengePW = Integer.valueOf(laenge.getValue().toString()).intValue();
       
        anzahlPW = Integer.valueOf(anzahl.getValue().toString()).intValue();
    }
}

Exception in thread "main" java.lang.NullPointerException
at gui.Starten.stateChanged(Starten.java:135)
at javax.swing.JSpinner.fireStateChanged(Unknown Source)
at javax.swing.JSpinner$ModelListener.stateChanged(Unknown Source)
at javax.swing.AbstractSpinnerModel.fireStateChanged(Unknown Source)
at javax.swing.SpinnerNumberModel.setValue(Unknown Source)
at javax.swing.JSpinner.setValue(Unknown Source)
at gui.Starten.<init>(Starten.java:68)
at gui.Starten.main(Starten.java:97)

Danke vorab schonmal für die Hilfe.
 

X5-599

Top Contributor
Das liegt daran, daß du die setValue() Methode aufrufst nachdem du bereits den ChangeListener gesetzt hast. setValue() löst ein ChangeEvent aus.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
S JSpinner getValue() Problem Allgemeine Java-Themen 9
G Datentypen JGoodies Binding und JSpinner mit Integer Allgemeine Java-Themen 2
P JSpinner/getValue Allgemeine Java-Themen 10
berserkerdq2 Gibt es eine saubere Dokumentation von Jfoenix? Allgemeine Java-Themen 1
T Verschachtelte For-Schleife gibt falschen Wert zurück, Abbruchbedingung evtl. falsch? Allgemeine Java-Themen 9
E Class.getResourceAsStream() gibt null zurück Allgemeine Java-Themen 2
Tiago1234 CellReference cr = new CellReference("") gibt den falschen Wert zurück Allgemeine Java-Themen 49
F Gibt es mittlerweile eine Alternative zu DaisyDiff Allgemeine Java-Themen 2
Jose05 Gibt es einen Nachteil bei dem JDK 8? Allgemeine Java-Themen 7
H Apache fop -- welche Möglichkeit gibt es um den Fortschritt anzuzeigen (Progressbar) Allgemeine Java-Themen 5
M Warum gibt es Unterschiedliche Kommentar Zeichen Allgemeine Java-Themen 15
Tobero Eclipse Window builder gibt es da sowas wie @ignore? Allgemeine Java-Themen 1
pkm javax.script.ScriptEngineManager gibt mir keine Engine Allgemeine Java-Themen 4
M Openjdk - gibt es auch eine Openjre? Allgemeine Java-Themen 7
Zrebna Gibt es eine Möglichkeit eine NPE zu vermeiden, wenn null returned wird? Allgemeine Java-Themen 3
S Gibt es eine Moeglichkeit die Runtime Ausführung zu analysieren..? Allgemeine Java-Themen 7
R Schlüsselworte "Throw new exception" gibt nicht den String als Fehlermeldung aus Allgemeine Java-Themen 2
F Überprüfen ob es Überschneidungen von Uhrzeiten (vom Typ Calendar) gibt Allgemeine Java-Themen 10
M Gibt es eine API die den aktuellen Wert eines Indikators beim Trading zurückgibt? Allgemeine Java-Themen 7
X Collections Gibt es eine Klasse welche die Vorteile von List und HashMap vereint, aber konstante Laufzeit (O(1)) hat in Java? Allgemeine Java-Themen 4
LimDul Spezifkation, wann es deprecation Warnings gibt Allgemeine Java-Themen 1
C Variablen == gibt immer false aus. Allgemeine Java-Themen 2
E gibt es BigDouble in Java ? Allgemeine Java-Themen 14
S Gibt es eigentlich Java Source Code Interpreter..? Allgemeine Java-Themen 13
P Element einer Liste wurde hinzugefügt, aber es gibt keinen Zugriff Allgemeine Java-Themen 2
R JDK installieren Gibt es ab 2019 überhaupt noch Java? Allgemeine Java-Themen 6
B Gibt es eine Funktion die den Datentyp einer Variablen ermittelt? Allgemeine Java-Themen 8
N Gibt es etwas allgemeineres as Object? Allgemeine Java-Themen 16
T Input/Output Konsole gibt trotz printf keine Umlaute aus Allgemeine Java-Themen 17
H NetBeans geotools 15 oder 16 - welche Abhängingkeiten gibt es? Welche Jars brauche ich? Allgemeine Java-Themen 4
P Prüfen ob es Variable mit Namen gibt der als String übergeben wird Allgemeine Java-Themen 7
S Welche Java Techologien gibt es fürs Frontend Allgemeine Java-Themen 4
V Gibt es eine Möglichkeit die Internet auslastung mit Java auszulesen Allgemeine Java-Themen 11
L Gibt es in Java einen Property Editor? Allgemeine Java-Themen 2
S gibt testText nicht aus Allgemeine Java-Themen 3
R Es gibt keine dummen Fragen (hab ich mal gehört) Allgemeine Java-Themen 11
L Methoden Methode gibt mir beim verschlüsseln mit RSA 0 bytes aus ? Allgemeine Java-Themen 1
H Gibt es einen großen Unterschied zwischen Java 6 und Java 7? Allgemeine Java-Themen 3
L Konsole gibt Smileys aus Allgemeine Java-Themen 3
K Gepacktes Jar-File gibt beim Doppelklick eine Exception aus Allgemeine Java-Themen 4
O Collections ListIterator gibt Inhalt von ArrayList nicht aus Allgemeine Java-Themen 3
G Threads Gibt es eine Möglichkeit des Nichtblokierens? Allgemeine Java-Themen 5
C Vergleich von Enums gibt inkorrekte Werte Allgemeine Java-Themen 6
Jats Programm mit CMD Befehl hängt sich auf oder gibt error = 5 aus Allgemeine Java-Themen 4
V Gibt es einen Variablen Cast? Allgemeine Java-Themen 8
R JNI if abfrage gibt immer false zurück. Allgemeine Java-Themen 7
J Eclipse Elipse gibt mir keine Vorschläge mehr :( Allgemeine Java-Themen 6
G Gibt es so eine SortedMap? Allgemeine Java-Themen 21
Z Boolean Abfrage gibt kein Boolean zurück, aber warum? Allgemeine Java-Themen 6
J Warum gibt es keinen Webbrowser auf Java-Basis? Allgemeine Java-Themen 8
E Gibt es Befehle für Kursor auf Konsole ? Allgemeine Java-Themen 3
J Logger gibt nicht alle Level aus Allgemeine Java-Themen 3
B Gibt es einen Unterschied zwischen Java 1.2 und Java 2? Allgemeine Java-Themen 7
J Calendar gibt falsche Wochenanzahl zurück Allgemeine Java-Themen 3
E Gibt es so etwas wie einen Windows Listener? Allgemeine Java-Themen 6
M Gibt es ein Jar - das alle Componente Automatisch anpasst? Allgemeine Java-Themen 14
R Gibt es eine JVM, die besser mit dem Speicher umgeht? Allgemeine Java-Themen 7
G Jarfile gibt keine Textnachrichten aus Allgemeine Java-Themen 2
S [1/2done] Woher bekommt man libarys die es erst ab 1.6 gibt. Allgemeine Java-Themen 10
G Gibt es etwas ähnliches wie den ReadKey bei Pascal? Allgemeine Java-Themen 3
D Gibt es indizierte Arrays in Java? Allgemeine Java-Themen 3
S Decimalformat gibt falsche Werte aus Allgemeine Java-Themen 3
G Da Jikes nicht mit java 5 geht, gibt es eine andere. Allgemeine Java-Themen 4
M Gibt es eigentlich einen Standalone-Java-ICQ-clone Allgemeine Java-Themen 19
M Gibt es ein Foren-System, dass in Java programmiert ist? Allgemeine Java-Themen 51
N char.At gibt Zeichenkette aus. aber leider 2x Allgemeine Java-Themen 10
G was gibt es für mögliche datenbanken? Allgemeine Java-Themen 6
TRunKX Gibt es ne fertige Java Funktion die Dateien vergleicht? Allgemeine Java-Themen 4
S auf einmal gibt es einen fehler. Allgemeine Java-Themen 3
F JLabel nach 5 Sekunden wieder leeren Allgemeine Java-Themen 7
B Problem mit leeren Zeilen Allgemeine Java-Themen 2
T JTextField in Listener leeren Allgemeine Java-Themen 2
G Excel-Daten in Datenbank speichern - Problem mit leeren Feldern Allgemeine Java-Themen 7
V Stringbuffer/builder leeren Allgemeine Java-Themen 2
E Executors - wie kann ich die Queue leeren? Allgemeine Java-Themen 2
7 Inhalt eines Objekts leeren aber Objekt nicht löschen Allgemeine Java-Themen 17
TheJavaKid DefaultTableModel komplett leeren Allgemeine Java-Themen 2
V Konsole leeren Allgemeine Java-Themen 13
bernd Array leeren Allgemeine Java-Themen 8
G Array leeren Allgemeine Java-Themen 1
A Datei leeren? Allgemeine Java-Themen 5

Ähnliche Java Themen

Neue Themen


Oben