2016-11-22 21 views
1

Ich habe versucht, ein einfaches Symbol in ein JPanel zu setzen, das mit dem BoxLayout formatiert wurde.Fehler beim Versuch, ein ImageIcon in Java zu setzen

JPanel panel_4 = new JPanel(); 
    contentPane.add(panel_4, BorderLayout.CENTER); 
    panel_4.setLayout(new BoxLayout(panel_4, BoxLayout.X_AXIS)); 

    ImageIcon seven= new ImageIcon("‪C:\\Users\\alewe\\workspace\\SlotMachine\\Lucky_Seven-128.png"); 

    JLabel lblNewLabel_1 = new JLabel(seven); 
    panel_4.add(lblNewLabel_1); 

Wenn ich den Code lief es mir den Fehler gab „Some characters cannot be mapped using "Cp1252" character encoding“, sparte ich von UTF-8, jetzt beginnt es, aber ich kann das Symbol nicht sehen.

+0

[diese] (http://stackoverflow.com/questions/1242581/display-a-jpg-image-on-a-jpanel) –

Antwort

1

Vielleicht, wenn Sie verwenden setIcon wird Ihnen helfen:

ImageIcon seven= new ImageIcon("‪C:\\Users\\alewe\\workspace\\SlotMachine\\Lucky_Seven-128.png"); 
JLabel lblNewLabel_1 = new JLabel(); 
//Set your icon to your label 
lblNewLabel_1.setIcon(seven); 
panel_4.add(lblNewLabel_1); 

Sie mehr über Symbole lesen kann here

+0

Dank helfen könnte so viel es funktioniert – Yuri

+0

Sie sind willkommen :) –

0

Sie eine Eingabestrom benötigen um das Bild zu lesen. verwenden Sie es wie folgt aus:

File f = new File("filepath"); 
     InputStream in=new FileInputStream(f); 
      if (in != null) { 
       ImageIcon imageIcon = new ImageIcon(ImageIO.read(in)); 
       label.setIcon(imageIcon); 
      } else { 
       LOG.debug("No icon found..."); 
      } 
+0

Danke, es funktioniert, sogar ich bevorzuge die SetIcon Antwort :) – Yuri

+0

Wenn ich den Eingangsstrom nicht benutze, bekomme ich immer den Fehler, den Sie getan haben. nur die akzeptierte Antwort kopiert und Fehler erscheint – XtremeBaumer

Verwandte Themen