Habe folgendes Problem: Wenn ich das in der main ausführe, kommt eine Nullpointer heraus. Beim Versuch es zulösen ist folgender Code herausgekommen. Warum? Wird die Bilddatei nicht gefunden? Mit diesem Code sollte der Fehler, so das Internet, erledigt sein.
Gruß und Dank
Ketzler
Java:
package View;
import java.awt.Image;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableCellRenderer;
import Model.MyRenderer;
public class ChartsTabelle {
public ChartsTabelle(JFrame seite){
//ChartsTabelle
ImageIcon iid = new ImageIcon(this.getClass().getClassLoader().getResource("/home/phern/workspace/3Abgabe/src/View/dangerous.jpg"));
Image ball = iid.getImage();
// Die Daten für das Table
Object[][] data = new Object[][]{
{"1", "The Hanging Tree", "James Newton Howard feat. Jennifer Lawrence", ball},
{"2", "Outside (feat. Ellie Goulding)", "Calvin Harris", new ImageIcon(getClass().getResource("/home/phern/workspace/3Abgabe/src/View/bilder/dangerous.jpg"))},
{"3", "Walk", "Kwabs", new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"4","Uptown Funk","Bruno Mars & Mark Ronson",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"5","I'm An Albatraoz","AronChupa",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"6","Dangerous (feat. Sam Martin)","David Guetta",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"7","Break The Rules","Charli XCX",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"8","Take Me To Church","Hozier",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"9","Auf anderen Wegen","Andreas Bourani",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"10","Blank Space","Taylor Swift",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"11","Flash mich","Mark Forster",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))},
{"12","Real Love","Clean Bandit",new ImageIcon(getClass().getResource("/home/phern/workspace/IloveMusic/jpg/helene.jpg"))}
};
// Die Column-Titles
String[] title = new String[]{
"Nummerierung", "Musiktitel", "Artist", "Cover"
};
// Das JTable initialisieren
DefaultTableModel model = new DefaultTableModel(data, title);
JTable table = new JTable( model );
//Größe der Spalten setzen
table.setAutoResizeMode(JTable.AUTO_RESIZE_OFF);
table.getColumn( "Nummerierung" ).setPreferredWidth( 100 );
table.getColumn( "Musiktitel" ).setPreferredWidth( 200 );
table.getColumn( "Artist" ).setPreferredWidth( 200 );
table.getColumn( "Cover" ).setPreferredWidth( 100 );
table.setPreferredScrollableViewportSize(table.getPreferredSize());
//table.getTableCellRendererComponent(table,new ImageIcon("/home/phern/workspace/IloveMusic/jpg/helene.jpg"), 1,4);
//table.getColumnModel().getColumn(3).setCellRenderer(new MyRenderer());
//hier die Spaltennummer für den Renderer setzen. 2 bedeutet, MyRenderer (der das Icon zeichnet) für die 3. Spalte (0 => 1. Spalte)
seite.getContentPane().add( new JScrollPane( table) ).setBounds(0, 150, 600, 500);
}
}
Gruß und Dank
Ketzler