Hallo zusammen!
Wie bekomme ich unterschiedliche Icons, abhängig vom ResultSet, in eine JTable?
Ich habe eine Tabelle in der, je nach Bedingung, 4 unterschiedliche Icons dargestellt werden sollen. Unter Umständen auch gleichzeitig. Sind zb 3 Bedingungen erfüllt, sollen auch 3 Icons angezeigt werden.
Das ganze möchte ich über ein ResultSet steuern.
Hier der Renderer:
So hatte ich mir das eigentlich gedacht:
Bin für jeden Tipp dankbar!
Wie bekomme ich unterschiedliche Icons, abhängig vom ResultSet, in eine JTable?
Ich habe eine Tabelle in der, je nach Bedingung, 4 unterschiedliche Icons dargestellt werden sollen. Unter Umständen auch gleichzeitig. Sind zb 3 Bedingungen erfüllt, sollen auch 3 Icons angezeigt werden.
Das ganze möchte ich über ein ResultSet steuern.
Hier der Renderer:
Java:
import java.awt.Component;
import javax.swing.ImageIcon;
import javax.swing.JTable;
import javax.swing.table.DefaultTableCellRenderer;
public class TableRenderer extends DefaultTableCellRenderer {
public Component getTableCellRendererComponent(JTable table, Object value,
boolean isSelected, boolean hasFocus,
int row, int column)
{
setText((String)value);
return this;
}
}
So hatte ich mir das eigentlich gedacht:
Java:
...
final TableRenderer tableRen;
public Main()
{
tableRen = new TableRenderer();
...
@Override
public void actionPerformed (ActionEvent evt)
{
ImageIcon icon_1 = new ImageIcon (Main.class.getResource ("fix.png"));
ImageIcon icon_2 = new ImageIcon (Main.class.getResource ("adr.png"));
Touren.tresults.clear();
tourWindow = new JDialog(fensterNeu,"Touren Liste", false);
tourWindow.setLayout(null);
tourWindow.add(toPanel.getTourPanelConnection());
toPanel.setTourPanelConnection(true);
tourWindow.setBounds(10,40,1005,675);
tourWindow.setVisible(true);
Query dbTouren = new Query();
ResultSet rsTouren = dbTouren.ReturnQuery("select * from touren");
try
{
while(rsTouren.next())
{
int f_jn = 0;
int a_jn = 0;
int s_jn = 0;
int z_jn = 0;
f_jn = rsTouren.getInt("fixjn");
a_jn = rsTouren.getInt("adrJN");
s_jn = rsTouren.getInt("schiffJN");
z_jn = rsTouren.getInt("zollJN");
Touren.tourTable.getColumnModel().getColumn(0).setCellRenderer(tableRen);
if (f_jn == 1)
{
tableRen.setIcon(icon_1);
}
else
{
tableRen.setIcon(null);
}
if (a_jn == 1)
{
tableRen.setIcon(icon_2);
}
else
{
tableRen.setIcon(null);
}
....
Bin für jeden Tipp dankbar!
Zuletzt bearbeitet: