Hallo zusammen,
habe eine frage ich habe ein JTable in die ich werte aus einer DB lade, nun sollen alle Zellen in EINER SPALTE in der JTable die den inhalt notfound haben einen roten hintergrund bekommen.
irgendwie funzt das nicht bei mir habe eine eigene klasse für den cellrenderer geschrieben.
Danke für eure hilfe
habe eine frage ich habe ein JTable in die ich werte aus einer DB lade, nun sollen alle Zellen in EINER SPALTE in der JTable die den inhalt notfound haben einen roten hintergrund bekommen.
irgendwie funzt das nicht bei mir habe eine eigene klasse für den cellrenderer geschrieben.
Danke für eure hilfe
Java:
import java.awt.Color;
import java.awt.Component;
import javax.swing.JLabel;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.SwingConstants;
import javax.swing.UIManager;
import javax.swing.table.TableCellRenderer;
public class MyCellRend extends JLabel implements TableCellRenderer
{
private static String COLUMN_STRINGTYPE="STRING";
private static String COLUMN_NUMBERTYPE="NUMBER";
String ColType="";
public MyCellRend()
{
setOpaque(false);
this.setBackground(UIManager.getColor("InputField.Required"));
}
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus, int row, int column) {
setBorder(table.getBorder());
setSize(getComponentCount(), getComponentCount());
this.setPreferredSize(getSize());
setHorizontalAlignment(SwingConstants.RIGHT);
if(row % 2==0){}
setValue(value);
if(value.equals("notfound")){
setBackground(Color.red);
System.out.println(this.getText());}
return this;
}
private void setValue(Object value) {
this.setText((String)value);
}
}