# Bild in JTable einfügen



## =fire= (10. Dezember 2010)

Hallo,

ich versuche zur Zeit etwas Java zu lernen. Ich habe vor ein kleines Verwaltungsprogramm zu bauen (hinzufügen, bearbeiten, löschen). Die Daten sollen aus einer Datenbank kommen. Das klappt auch schon. 
Ich möchte nun aber ein icon bspw. 
	

	
	
		
		

		
			





 in die letzte Spalte setzen, mit der man den Eintrag ändern kann. Ich benutze JTable, weiß aber nicht wie ich das Bild dort ergänzen und verlinken kann.

Bitte um Hilfe, Danke!


----------



## z-mon (19. Dezember 2010)

Hallo Firesimon,

wenn du ein JLabel nutzt reicht 

JLabel label;
label.setIcon(new ImageIcon("images/ichBinEinImage.gif"));

Grüße


----------



## darkmagic2002 (19. Dezember 2010)

Hallo Firesimon,
die ausformulierte Lösung^^: Baue dir einfach einen eigenen _CellRenderer_.


```
JTable table = new JTable(/*Daten*/);
table.getColumnModel().getColumn(2).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)
```

und der Renderer:

```
class MyRenderer extends DefaultTableCellRenderer implements TableCellRenderer
{
	@Override
	public Component getTableCellRendererComponent(JTable table, Object value,
			boolean isSelected, boolean hasFocus, int row, int column)
	{
		setIcon(new ImageIcon(/*Dateipfad*/));
		//***
		return super.getTableCellRendererComponent(table, value, isSelected, hasFocus, row, column);
	}
}
```
Gruß kevin

edit:
Soll das Icon rechts neben dem Text stehen, einfach an Stelle *//**** Folgendes einfügen:

```
setHorizontalTextPosition(JLabel.LEFT);
```


----------

