# JTable transparent



## Jemand (26. Jun 2008)

Hi ihr!

Ich hab euer "Tutorial" aus dem FAQ zur JTable insoweit durchgearbeitet, dass ich jetzt ein eigenes TableModel und eine eigene Tabellenklasse habe, die Booleans und Integer schön darstellt und die nach diesem Tutorial www.codeguru.com/java/articles/177.shtml, auf das auch in der FAQ verwiesen wird, transparent ist, so dass man ein Hintergrundbild sieht. 

Jetzt soll mein Nutzer aber in die Tabelle klicken und Daten ändern können. Ich habe jetzt das Problem, dass wenn man auf eine Zeile klickt, dort alles durchsichtig wird und das auch nicht wieder weggeht. Also wenn ich eine andere Zeile anklicke, wird die vorige wieder sichtbar, die neu angeklickte ist es aber nicht.
Das ist dann also sozusagen eine komplett leere Zeile.

Ich hab über die Suchfunktion nichts dazu gefunden und weiß auch nicht wirklich, woran das liegen könnte. 

Liegt das irgendwie an der Transparenz? Muss ich was machen, damit selektierte Rows irgendwie anders behandelt werden?

Ich hoffe ihr könnt mit meinem Problem etwas anfangen 

Danke schonmal im Voraus!


----------



## Jemand (26. Jun 2008)

Kann den Thread vielleicht jemand ins richtige Forum verschieben oder sollte ich da eher nochmal posten?
Ich hab eben erst gesehen, dass es statt zu Grafik vielleicht doch eher zu AWT, Swing etc. gehört...

Ich hab jetzt herausgefunden, woran es liegt:


```
public Component prepareRenderer(TableCellRenderer renderer, int row, int column) 
		{
			Component c = super.prepareRenderer( renderer, row, column);
			// We want renderer component to be transparent so background image is visible
			if( c instanceof JComponent )
				((JComponent)c).setOpaque(false);
			return c;
		}
```

Diese Methode ist aus obigem verlinkten Tutorial, wenn die nicht drin ist, ist auch die Tabelle nicht transparent, dafür kann ich ganz normal die Zeilen selektieren, diese sind dann blau umrandet etc...

Kann ich nicht eine transparente Tabelle haben, in der ich Zeilen selektieren kann? Ich weiß nicht mehr so richtig weiter...


----------



## Marco13 (26. Jun 2008)

Mehr infos und (vor allem!) ein Compilierbares testprogramm wären nicht schlecht. Mir ist nicht klar, was du willst, und was das Porblem ist, aber .... kann es sein, dass du vielleicht noch bei dem
((JComponent)c).setOpaque(false); 
irgendwelche if-Abfragen drumrum machen musst? Z.B. abfragen, ob die "row" die Zeile ist, die in der Table ausgewählt ist oder so?


----------

