Swing NullPointerException in AW Event-0?

3dprogger

Mitglied
Hallo, ich habe derzeit an einem kleinen Blackjack Spiel. Die Klassen und alles andere drum und dran ist fertig und funktionsfähig. Im Grunde hat es bereits funktioniert, bis ich mit den Buttons angefangen habe und ein wenig umgestellte vom Code her.

Ich habe bereits gegoogelt und mich informiert wo so etwas entstehen könnte ( keine Initialisierung usw.), aber finde meinen eigenen Fehler leider nicht.

Hier mein Code:
Java:
import java.awt.*;
import java.awt.BorderLayout;
import java.awt.GridLayout;
import java.awt.event.*;

import java.awt.Color;
import java.awt.Dimension;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.Box;
import javax.swing.BoxLayout;


import javax.swing.JPanel;
import javax.swing.SwingUtilities;

import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JMenu;
import javax.swing.JMenuBar;
import javax.swing.JTextArea;
import javax.swing.JToolBar;
import javax.swing.SwingUtilities;

import javax.swing.border.LineBorder;
import javax.swing.border.EmptyBorder;

import javax.swing.SwingUtilities;


import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.*;

import java.beans.PropertyChangeListener;
import java.beans.PropertyChangeEvent;

import java.text.*;



 
  public class SiebzehnVier extends JFrame implements ActionListener  {
   JTextField sname1,sname2;
   JButton selectb, playb, exitb;
   int anzahl = 2;
   String [] spielernamen = new String[anzahl];
   JPanel spielPanel = new JPanel();
   JPanel spielerPanel = new JPanel();
   JPanel gegnerPanel = new JPanel();
   Runde r;
   int kartenmatrix [][] = new int[4][9];
   boolean namengesetzt=false;
   
  public int convertPoint(int x) {
  	switch(x) {
  	 case 2: return 0;
  	 case 3: return 1;
  	 case 4: return 2;
  	 case 7: return 3;
  	 case 8: return 4;
  	 case 9: return 5;
  	 case 10: return 6;
  	 case 11: return 7;
  	default: return -1;	 		
  	 } 
  	} 
  public String getKarte(int x) {
   String kette = "";
   int a,b,c;
   c=0; 
  b=convertPoint(r.werte[x]);
  if (b>-1){
   
  while (c == 0){
   a=(int)Math.random ()*4;  
   
   if (kartenmatrix[a][b]==0) {
    kette = "img/" + a + "0" + b + ".png";
    kartenmatrix[a][b]++; 
    c++;;
   }
 }  	
  }
  return kette;
}
  public void startGame() {
   for(int j=0; j<4;j++)
    for(int k=0; k<9;k++)
     kartenmatrix[j][k]=0;
     	
   r = new Runde(anzahl, spielernamen);	
   
  	} 
   

   
   
  public SiebzehnVier() {
  	String kette="";
  	initwindow();
    initUI();
    
   
   for(int i=0; i<6;i++) {
   	kette = getKarte(i);	
    if (!kette.equals("")) {
    spielerPanel.add(new JLabel(new ImageIcon(getKarte(i))));
    spielerPanel.add(new JLabel("Spielername: "+r.s[0].getSpielername()));
    spielerPanel.add(new JLabel("Spiele: "+r.s[0].getSpiele()));
    spielerPanel.add(new JLabel("Gewonnen: "+r.s[0].getGewonneneSpiele()));
    spielerPanel.updateUI();
      }
 	 }
   for(int i=6; i<10;i++) {
   	kette = getKarte(i);
   if (!kette.equals("")) {
   gegnerPanel.add(new JLabel(new ImageIcon(getKarte(i))));
   gegnerPanel.add(new JLabel("Spielername: "+r.s[1].getSpielername()));
   gegnerPanel.add(new JLabel("Spiele: "+r.s[1].getSpiele()));
   gegnerPanel.add(new JLabel("Gewonnen: "+r.s[1].getGewonneneSpiele()));
   gegnerPanel.updateUI();
     }
    }
	repaint();	
   }
   
  public void actionPerformed(ActionEvent e) {
     if(e.getSource() == selectb){
      if (!namengesetzt){
      spielernamen[0]=sname1.getText();
      spielernamen[1]=sname2.getText();  
      namengesetzt=true;
      startGame();
      
       }
        else {
         
   	     r.Spielstart();
   	     r.s[0].setSpiele();
   	     r.s[1].setSpiele();
        	}    
       }
       
    if(e.getSource() == playb){ 
     if (r.count < 10) { 
      r.s[r.count].setPunkte();
      r.count++;  
      r.s[r.count].setPunkte();
      r.count++;  
       }
        else {
         r.setGewinner();	
        }    
      }     
    if(e.getSource() == exitb) {
    	r.setGewinner();
    	} 
      repaint(); 
     }  
   
  public final void initUI() {
  	JMenuBar menubar = new JMenuBar();
        JMenu file = new JMenu("Datei");

        menubar.add(file);
        setJMenuBar(menubar);

  

        JToolBar vertical = new JToolBar(JToolBar.VERTICAL);
        vertical.setFloatable(false);
        vertical.setMargin(new Insets(10, 5, 5, 5));

        ImageIcon select = new ImageIcon("img/icon/agree.png");
        ImageIcon play = new ImageIcon("img/icon/play.png");
        ImageIcon exit = new ImageIcon("img/icon/exit.png");

        JButton selectb = new JButton(select);
        selectb.setBorder(new EmptyBorder(3, 0, 3, 0));

        JButton playb = new JButton(play);
        playb.setBorder(new EmptyBorder(3, 0, 3, 0));
        
        JButton exitb = new JButton(exit);
        exitb.setBorder(new EmptyBorder(3, 0, 3, 0));
        
        sname1 = new JTextField("Spielername 1",10);

        sname2 = new JTextField("Spielername 2",10);


        //sname1.setMaximumSize(new Dimension(200, vertical.getPreferredSize().height)); // setColumns(int);

        
        JToolBar toolbar = new JToolBar();
        toolbar.setFloatable(false);
		
		
		sname1.setMaximumSize(new Dimension(200, vertical.getPreferredSize().height));
		sname1.setBorder(LineBorder.createGrayLineBorder());
        toolbar.add(sname1);
        sname2.setBorder(LineBorder.createGrayLineBorder());
        sname2.setMaximumSize(new Dimension(200, vertical.getPreferredSize().height)); 
        toolbar.add(sname2);
        



        add(toolbar, BorderLayout.NORTH);

        selectb.addActionListener(this);
        playb.addActionListener(this);
        exitb.addActionListener(this);
        
        
        
        vertical.add(selectb);
        vertical.add(playb);  
        vertical.add(exitb);
        
        

        add(vertical, BorderLayout.WEST);
       
      
       
     
      // spielPanel.setBorder(BorderFactory.createEmptyBorder(5, 5, 5, 5));
       spielPanel.setLayout(new GridLayout(2, 1, 5, 5));
       spielPanel.setBackground(Color.GRAY);
       add(spielPanel, BorderLayout.CENTER);
	    
       
       spielerPanel.setBackground(Color.GRAY);
       spielerPanel.setBorder(LineBorder.createGrayLineBorder());
       gegnerPanel.setBackground(Color.GRAY);
       
       spielPanel.add(spielerPanel);
       spielPanel.add(gegnerPanel);


        JLabel statusbar = new JLabel(" Statusbar");
        statusbar.setPreferredSize(new Dimension(-1, 22));
        statusbar.setBorder(LineBorder.createGrayLineBorder());
        add(statusbar, BorderLayout.SOUTH);

      repaint(); 
    }
   
  
   
  public final void initwindow(){
   setTitle("Simulation: Siebzehn und Vier"); 
   setSize(800, 600);
   setLocationRelativeTo(null);
   setDefaultCloseOperation(EXIT_ON_CLOSE);
  }
  
  
  public static void main(String[] args) {
  	SwingUtilities.invokeLater(new Runnable() {
  		public void run() {
  			SiebzehnVier fenster = new SiebzehnVier();
  			fenster.setVisible(true);
      }
   });
  
   
   
   
 }
}
 

eRaaaa

Top Contributor
Wie lautet die genaue Exception? Zeilennummer etc...schau dort doch mal nach, kann ja dann nicht an vielen Sachen liegen. Eine NPE zu finden ist normal leicht!
 

3dprogger

Mitglied
Hallo eRaaaa, hier die Meldung

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at SiebzehnVier.getKarte(SiebzehnVier.java:75)
at SiebzehnVier.<init>(SiebzehnVier.java:109)
at SiebzehnVier$1.run(SiebzehnVier.java:267)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:20
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispat
ad.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchT
java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispat
ad.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.jav

at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.jav

at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
 

eRaaaa

Top Contributor
Joah und jetzt halt schauen was da null sein könnte
Java:
  b=convertPoint(r.werte[x]);
Ich habe jetzt auf die Schnelle nicht finden können wo du startGame() aufrufst(bzw vor getKarte()..) und somit r initialisierst oder? r sollte demnach null sein.
Aber das ließe sich auch alles kontrollieren :D
 

3dprogger

Mitglied
Hoffentlich liest das noch einer :D

Woran könnte es liegen, dass die Buttons nicht reagieren. Also bei klicken ist das praktisch ein void Klick.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
_user_q Objekte vom MainController in anderen Controller verwenden und andersherum (NullPointerException) AWT, Swing, JavaFX & SWT 14
Jose05 Nullpointerexception bei toArray() AWT, Swing, JavaFX & SWT 9
Jose05 NullPointerException bei Beschreiben eines Labels aus einem Array AWT, Swing, JavaFX & SWT 12
J Java FX NullPointerException, ObservableList wird in View nicht angezeigt.. AWT, Swing, JavaFX & SWT 34
N Nur bei einem Textfiled Nullpointerexception bei getText() AWT, Swing, JavaFX & SWT 1
R NullPointerException beim Start des Fensters AWT, Swing, JavaFX & SWT 1
D JavaFX Nullpointerexception wegen TableView AWT, Swing, JavaFX & SWT 2
ZH1896ZH JavaFX kann NullPointerException nicht auflösen... :( AWT, Swing, JavaFX & SWT 3
M NullPointerException / Controller AWT, Swing, JavaFX & SWT 4
R Swing Java9 NullPointerException bei JComboBox AWT, Swing, JavaFX & SWT 13
L java.lang.NullPointerException - Fehlermeldung AWT, Swing, JavaFX & SWT 2
M NullPointerException bei Übergabe eines RadioButtons AWT, Swing, JavaFX & SWT 11
zhermann NullPointerException bei Label.setText() AWT, Swing, JavaFX & SWT 5
it_is_all jLabel.setText -> Char in Str: NullpointerException AWT, Swing, JavaFX & SWT 1
D NullPointerException observableList AWT, Swing, JavaFX & SWT 4
J NullPointerException bei getText() AWT, Swing, JavaFX & SWT 3
S JavaFX NullPointerException bei Versuch ImageView zu ändern AWT, Swing, JavaFX & SWT 1
K JFileChooser NullPointerException AWT, Swing, JavaFX & SWT 7
T Swing NullPointerException beim auslesen von jTextField - Anfänger! AWT, Swing, JavaFX & SWT 3
S Swing [CLOSED] NullPointerException bei BorderLayout() AWT, Swing, JavaFX & SWT 8
G Swing NullPointerException und JXImageView AWT, Swing, JavaFX & SWT 4
L exception in thread awt-eventqueue-0 java.lang.nullpointerexception AWT, Swing, JavaFX & SWT 2
U Swing NullPointerException trotz Referenz auf Textfield & Button AWT, Swing, JavaFX & SWT 6
L NullpointerException und Probleme mit repaint() AWT, Swing, JavaFX & SWT 11
G JavaFX NullPointerException bei Zugriff auf FXML Element AWT, Swing, JavaFX & SWT 0
K JavaFX Pfad öffen NullPointerException AWT, Swing, JavaFX & SWT 4
H SWT NullPointerException bei Zugriff auf Variablen des Hauptfensters AWT, Swing, JavaFX & SWT 6
L Event Handling windowAdapter - NullPointerException beim Schließen AWT, Swing, JavaFX & SWT 5
J JTable verursacht NullPointerException.Ratlos. AWT, Swing, JavaFX & SWT 5
C JButton NullPointerException AWT, Swing, JavaFX & SWT 2
Q getGraphics() - NullPointerException AWT, Swing, JavaFX & SWT 8
C NullPointerException im MVC Muster AWT, Swing, JavaFX & SWT 9
V Nullpointerexception (etwas mit thread und jframe) AWT, Swing, JavaFX & SWT 3
M JTable Drucken NullpointerException +JTable speichern AWT, Swing, JavaFX & SWT 6
T Swing Laden eines Icons auf JButton liefert NullPointerException AWT, Swing, JavaFX & SWT 8
M Exception in thread "Thread-3" java.lang.NullPointerException AWT, Swing, JavaFX & SWT 18
C Swing NullPointerException beim Hinzufügen von Checkboxes in eine ArrayList AWT, Swing, JavaFX & SWT 5
1 JComponent -> java.lang.NullPointerException AWT, Swing, JavaFX & SWT 13
B Swing NullPointerException bei actionPerformed() AWT, Swing, JavaFX & SWT 2
E java.lang.NullPointerException AWT, Swing, JavaFX & SWT 14
R NullPointerException AWT, Swing, JavaFX & SWT 16
xehpuk Swing NullPointerException: Random-Instanz anfangs nicht initialisiert AWT, Swing, JavaFX & SWT 4
C SWT NullPointerException AWT, Swing, JavaFX & SWT 12
J NullPointerException bei Benutzung vom TableCellRenderer AWT, Swing, JavaFX & SWT 3
A AWT Methodenaufruf "AWT-EventQueue-0" java.lang.NullPointerException AWT, Swing, JavaFX & SWT 4
X NullPointerException beim Einfügen einer JMenuBar AWT, Swing, JavaFX & SWT 4
B NullPointerException bei JFrame AWT, Swing, JavaFX & SWT 2
D JPanel / NullPointerException AWT, Swing, JavaFX & SWT 4
G LookAndFeel Dynamisches Einlesen von LookAndFeels - NullPointerException AWT, Swing, JavaFX & SWT 4
E Login wird durch NullPointerException abgebrochen AWT, Swing, JavaFX & SWT 10
K NullPointerException ohne CodeLink AWT, Swing, JavaFX & SWT 6
L NullPointerException JFreeChart AWT, Swing, JavaFX & SWT 10
F NullPointerException - HILFE!! AWT, Swing, JavaFX & SWT 20
martinyyyy AWT Parameter erzeugen NullpointerException obwohl sie vorhanden sind? AWT, Swing, JavaFX & SWT 4
H Swing NullPointerException in JTable bei vielen Einträgen AWT, Swing, JavaFX & SWT 2
S Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException AWT, Swing, JavaFX & SWT 7
S NullPointerException bei JFileChooser AWT, Swing, JavaFX & SWT 8
X JList Probleme mit NullPointerException AWT, Swing, JavaFX & SWT 3
S NullPointerException bei Aufruf von updateUI() beim JFrame AWT, Swing, JavaFX & SWT 12
Z NullPointerException bei SplashScreen AWT, Swing, JavaFX & SWT 5
C NullPointerException bei Doppelpufferung AWT, Swing, JavaFX & SWT 3
F CardLayout.show() -> NullPointerException AWT, Swing, JavaFX & SWT 4
B NullPointerException bei String vergleich AWT, Swing, JavaFX & SWT 5
K NullPointerException bei JTextField AWT, Swing, JavaFX & SWT 8
L Problem mit "NullPointerException" bei grafischer AWT, Swing, JavaFX & SWT 3
D bei Thread in JComponent malen NullPointerException AWT, Swing, JavaFX & SWT 3
loadbrain JTextFields & java.lang.NullPointerException AWT, Swing, JavaFX & SWT 2
F JProgressBar und NullPointerException AWT, Swing, JavaFX & SWT 4
D javax.swing.Timer bringt NullPointerException AWT, Swing, JavaFX & SWT 4
R TextField bringt NullPointerException bei setVisible() AWT, Swing, JavaFX & SWT 12
A NullPointerException in einer JList AWT, Swing, JavaFX & SWT 7
F Fehler: java.lang.NullPointerException AWT, Swing, JavaFX & SWT 2
S Brauche Hilfe mit JFrame - NullPointerException AWT, Swing, JavaFX & SWT 7
A NullPointerException - warum? AWT, Swing, JavaFX & SWT 5
G NullPointerException bei Aufruf von JTabbedPane.getSelectedI AWT, Swing, JavaFX & SWT 7
G Problem mit NullPointerException AWT, Swing, JavaFX & SWT 11
M JTable verursacht NullPointerException AWT, Swing, JavaFX & SWT 8
M NullPointerException AWT, Swing, JavaFX & SWT 3
J NullPointerException bei getSelectedItem AWT, Swing, JavaFX & SWT 10
G Bekomme immer: NullPointerException AWT, Swing, JavaFX & SWT 2
Juelin in javafx Event auslösen AWT, Swing, JavaFX & SWT 4
G Mouse Event in anderemm Event auslösen AWT, Swing, JavaFX & SWT 50
schoel27 Mehrere JButtons sollen das gleiche Event auslösen AWT, Swing, JavaFX & SWT 2
K Warum genau hat man einen Listener, dann ein Event und was ist ein Adapter AWT, Swing, JavaFX & SWT 2
izoards Java FX Window Event SHOWING AWT, Swing, JavaFX & SWT 17
Fridolin111 Der KeyListener Löst kein event aus AWT, Swing, JavaFX & SWT 6
B JavaFX Von welcher Klasse und zu welchem Zeitpunkt werden Event-Objekte erstellt? AWT, Swing, JavaFX & SWT 3
L JavaFX Ich suche das passende Textfield Event AWT, Swing, JavaFX & SWT 1
J CheckBoxListCell auf click event in listView reagieren AWT, Swing, JavaFX & SWT 1
W JavaFX Etwas Tabellenartiges + Cell-Content-Changed-Event (o.ä.) AWT, Swing, JavaFX & SWT 30
O Swing Event Dispatch Thread AWT, Swing, JavaFX & SWT 1
B Swing Windowbuilder Rückgabewert im Event AWT, Swing, JavaFX & SWT 3
Z Befehl Action Event Verlassen AWT, Swing, JavaFX & SWT 4
F Event wenn Maus eine JList verlässt AWT, Swing, JavaFX & SWT 13
M JavaFX Absoluter Fokus während drag Event AWT, Swing, JavaFX & SWT 10
Pr0m3theus Animation nach Event AWT, Swing, JavaFX & SWT 6
K Event Handling ComboBox Event Handler AWT, Swing, JavaFX & SWT 7
Sugan Swipe Event? AWT, Swing, JavaFX & SWT 8
Tausendsassa Text changed event handler jTextField AWT, Swing, JavaFX & SWT 3
H Event Handling JavaFx - auf Event warten AWT, Swing, JavaFX & SWT 4

Ähnliche Java Themen

Neue Themen


Oben