jTalbe: Probs bei Icon Darstellung

Status
Nicht offen für weitere Antworten.

vollmex

Mitglied
Hi Leute,
ich arbeite gerade an einem kleinen Projekt, in dem Aufträge mit ihren Statien dargestellt werden sollen. Das ganze soll in einer JTable angezeigt werden! Das hat bisher alles auch geklappt. Jetzt möchte ich den Status durch ein kleines Icon darstellen. Mit JTable habe ich noch nicht so die großen Erfahrungen, aber dass ich den DefaultTableRenderer überschreiben muss habe ich auch schon mitbekommen und auch umgesetzt! Das Icon wird dargestellt. Allerdings wenn ich mehrere Aufträge untereinander anzeigen will, wird das Icon auf einmal in jedem Feld dargestellt!
Ich meine, die erste Zeile wird richtig dargestellt, das heißt die ersten 3 Felder enthalten nur Text, aber dann beim 4ten Feld, in dem nur das Icon zu sehen sein sollte wird das Icon und der Text von dem Column davor angezeigt. In der nächsten Zeile wird immer das Bild + dazugehörigen Text in jedem Column angezeigt, und das sollte nicht sein!
Hier mal mein Code, der hoffentlich mehr sagt...


Meine Methode
Code:
       String sSQL = "";                                                                                        
        sSQL = "SELECT Barcode, State, Caller, dProcessed FROM t_history WHERE Barcode like '" + jComboBox1.getSelectedItem().toString() +"'";
        try {
            Connection con = talBE.getDBConnection();
            Statement stmt = con.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE, ResultSet.CONCUR_READ_ONLY);  
            ResultSet rs = stmt.executeQuery(sSQL);

             rs.last();   
             Object rows[][] = new Object[rs.getRow()][4];    
             rs.first();
             int itemp=0;
             do {
                 //System.out.println(rs.getRow());
                 rows[itemp][0] = new String(rs.getString("Barcode"));
                 rows[itemp][1] = new String(rs.getString("caller"));
                 rows[itemp][2] = new String(rs.getString("dProcessed");
                 rows[itemp][3] = new ImageIcon();
                 itemp++;
             } while(rs.next());

             model.addRow(rows);  
             Object[] data = new Object[4];
             data[0]= "Auftragsnummer";
             data[1]= "Auftraggeber";
             data[2]= "Datum/Uhrzeit";
             data[3]= "Status";
             model.setDataVector(rows, data);
             jTable1.setModel(model);
             
                          
        } catch(SQLException sqle) {
            sqle.printStackTrace();
        }



Meine Render Klasse
Code:
public class MyKlassenRenderer extends JLabel implements TableCellRenderer{ 


    public MyKlassenRenderer(){ 
        setOpaque(true); 
    } 
    public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { 
        
    
        if(value instanceof Icon) {
            setIcon( new ImageIcon("c:/TEMP/Bild1.png"));
        }    
        else if(value instanceof String){ 
            System.out.println(value); 
            setText(String.valueOf(value)); 
        }
         
        
                
        return this; 
    } 
}

Ich hoffe das ich es soweit beschrieben habe, dass ihr etwas damit anfangen könnt!
Vielen Dank!
 

Sky

Top Contributor
In Zeile 11 & 12
Code:
if(value instanceof Icon) { 
  setIcon( new ImageIcon("c:/TEMP/Bild1.png")); 
}
sagst Du, "wenn mein Wert ein Icon ist, so lade immer das Bild1". Vielleicht liegt es ja daran!? Versuch mal lieber
Code:
if(value instanceof Icon) { 
  setIcon( (Icon)value ); 
}
 
B

Beni

Gast
Vorallem, wenn es kein Icon ist, musst du das Icon von früher wieder entfernen ("setIcon( null )"). Denn der Renderer ist ja immer dieselbe Component, und Einstellungen von früher werden nicht einfach gelöscht.
 

vollmex

Mitglied
hey, Hut ab Krone auf!!!
das tut jetzt. Ich habe die Methode wie folgt abgeändert!

Code:
public Component getTableCellRendererComponent(JTable table, Object value, boolean isSelected, boolean hasFocus, int row, int column) { 
        
       
        if(isSelected || hasFocus){ 
       
        } 
        else{ 
       
        } 
    
        if(value instanceof Icon) {
            setIcon( new ImageIcon("c:/TEMP/Bild1.png"));
            setText("");   //  <------------------
        }    
        else if(value instanceof String){ 
            setIcon( null );   //  <--------------------
            System.out.println(value); 
            setText(String.valueOf(value)); 
        }
         
        
                
        return this; 
    }
Wenn ich mir das nochmal so durch den Kopf gehen lasse ist es eig. auch logisch, dass ich den Text oder das Bild jeweils immer auf NULL oder "" setzten muss!
Das ich immer Bild1 angezogen habe liegt daran, dass ich nur teste, ob es überhaupt Funktioniert.

Vielen Dank für die Hilfe!
 
Status
Nicht offen für weitere Antworten.
Ähnliche Java Themen
  Titel Forum Antworten Datum
G probs mit buttons & Listener AWT, Swing, JavaFX & SWT 9
M probs mit einbinden von bildern AWT, Swing, JavaFX & SWT 7
K JTable Renderer - Probs mit Icon AWT, Swing, JavaFX & SWT 3
B probs mit .getSelectedValues() bzw. type-cast AWT, Swing, JavaFX & SWT 8
E GUI-Probs AWT, Swing, JavaFX & SWT 3
G Ikonli in Fat-Jar mit mehreren Icon-Packs einbinden AWT, Swing, JavaFX & SWT 5
I AWT java.awt.FileDialog - "coffee cup"-Icon lässt sich nicht ersetzen AWT, Swing, JavaFX & SWT 14
P Swing Icon einfügen wirft eine Fehlermeldung AWT, Swing, JavaFX & SWT 3
J JButton Icon hinzufügen AWT, Swing, JavaFX & SWT 5
U Swing JButton mit Icon AWT, Swing, JavaFX & SWT 7
N Swing Image aus Web laden und in Icon umwandeln AWT, Swing, JavaFX & SWT 4
krgewb Swing Icon von Button AWT, Swing, JavaFX & SWT 12
Shallty JavaFX MenuItem (Info) Icon ändern AWT, Swing, JavaFX & SWT 7
Legi Swing JButton Icon verschiebt sich AWT, Swing, JavaFX & SWT 2
U AWT Smoother Icon AWT, Swing, JavaFX & SWT 2
D Kein Icon beim JTabbedPane AWT, Swing, JavaFX & SWT 1
S JavaFX TreeItem: Icon am Ende eines Eintrags anhängen AWT, Swing, JavaFX & SWT 2
D Icon in Menuitem einfügen AWT, Swing, JavaFX & SWT 8
C Icon in der Spaltenüberschrift AWT, Swing, JavaFX & SWT 1
C SWT Treeview mit Bilder im Label verändert Expanded Icon AWT, Swing, JavaFX & SWT 1
Tom299 JavaFX TreeView Expanded-Icon ändern AWT, Swing, JavaFX & SWT 0
E Swing Error icon in der TextArea AWT, Swing, JavaFX & SWT 1
D JButton - Nur Icon anzeigen / transparenter Hintergrund AWT, Swing, JavaFX & SWT 2
M label mit icon verschieben. AWT, Swing, JavaFX & SWT 1
M JavaFX wie kann mann sein frame mit einem Icon fersehen? AWT, Swing, JavaFX & SWT 2
C JavaFX Application -Icon wird falsch dargestellt AWT, Swing, JavaFX & SWT 7
J JavaFX TextArea dynamisch Icon im Background anzeigen AWT, Swing, JavaFX & SWT 2
P Image oder Icon auf Tooltip zeichnen AWT, Swing, JavaFX & SWT 4
D JavaFX - MenuItem mit Icon AWT, Swing, JavaFX & SWT 1
T JFrame Icon unter Linux/Ubuntu AWT, Swing, JavaFX & SWT 11
A Swing JColorChooser's Icon will nicht getauscht werden. AWT, Swing, JavaFX & SWT 10
B JAVAFX icon in ComboBox einfügen AWT, Swing, JavaFX & SWT 5
H Javafx - Menuitem - Icon AWT, Swing, JavaFX & SWT 4
J JComboBox Dropdown Icon AWT, Swing, JavaFX & SWT 2
vodkaz JButtonz Icon&Background AWT, Swing, JavaFX & SWT 3
B Windowbuilder - Icon für Button einbinden AWT, Swing, JavaFX & SWT 2
B Icon AWT, Swing, JavaFX & SWT 5
E Swing JFrame Icon AWT, Swing, JavaFX & SWT 3
F icon aus exe auslesen mithilfe des JFilechooser ? AWT, Swing, JavaFX & SWT 4
F DefaultTreeCellEditor - Fragen zur Groesse und zum Icon beim Editieren AWT, Swing, JavaFX & SWT 4
H Label mit Icon positionieren AWT, Swing, JavaFX & SWT 14
H Image Icon ersetzen AWT, Swing, JavaFX & SWT 8
J Icon vor Button AWT, Swing, JavaFX & SWT 7
M Swing JButton-Konstruktor Icon-Parameter (Verständnisfrage) AWT, Swing, JavaFX & SWT 7
TheWhiteShadow Swing Problem mit Icon-Menü-Leiste AWT, Swing, JavaFX & SWT 5
S Würfelanimation icon updaten AWT, Swing, JavaFX & SWT 8
S JButton -> Text über Icon AWT, Swing, JavaFX & SWT 4
M Swing DoubleBuffer mit Icon AWT, Swing, JavaFX & SWT 3
TiME-SPLiNTER JLabel mit Icon & JFrame Resize AWT, Swing, JavaFX & SWT 5
V Panel/Icon aktualisieren AWT, Swing, JavaFX & SWT 10
S 2D-Grafik Icon in Image (System Icons) AWT, Swing, JavaFX & SWT 2
X Icon in JTable abbilden AWT, Swing, JavaFX & SWT 10
M Icon wird bei externen Jar nicht angezeigt AWT, Swing, JavaFX & SWT 2
L toggel icon in jtable AWT, Swing, JavaFX & SWT 3
kodela Swing Icon in der Titelleiste "festnageln" AWT, Swing, JavaFX & SWT 6
G JLabel Icon Pfeilform AWT, Swing, JavaFX & SWT 14
S JCheckBoxMenuItem - Haekchen verschwindet bei Icon AWT, Swing, JavaFX & SWT 3
Burny91 Swing Swatches vom JColorChooser als Icon für JButton benutzen AWT, Swing, JavaFX & SWT 4
V Ein Image als Button (nicht mit JButton(Icon)) AWT, Swing, JavaFX & SWT 5
algorismi JInternalframe Icon AWT, Swing, JavaFX & SWT 14
M JCheckBox Icon anpassen AWT, Swing, JavaFX & SWT 2
E Icon für Fenster AWT, Swing, JavaFX & SWT 5
M Prozess-Icon im Prozessmanager AWT, Swing, JavaFX & SWT 8
W Swing Button mit Icon AWT, Swing, JavaFX & SWT 3
S svg Icon für Button (Batik Problem?) AWT, Swing, JavaFX & SWT 3
C Swing JToggleButton und Icon AWT, Swing, JavaFX & SWT 2
S JTree - Knoten mit animiertem GIF/Icon AWT, Swing, JavaFX & SWT 5
S vector Icon AWT, Swing, JavaFX & SWT 3
C LayoutManager Icon Einfügen? AWT, Swing, JavaFX & SWT 6
N Icon für Button wird nicht gefunden AWT, Swing, JavaFX & SWT 11
B SWT Eigenes Icon für CheckboxTreeViewer AWT, Swing, JavaFX & SWT 3
K LookAndFeel JTabbedPane mit Icon und CloseButton AWT, Swing, JavaFX & SWT 2
badfish Swing ImageIcon auf JLabel, Fenster Maximieren verbieten und Icon oben links austauschen? AWT, Swing, JavaFX & SWT 5
F Problem beim Positionieren von Icon und Text in Button AWT, Swing, JavaFX & SWT 2
R JTable mit Column die Icon und Integer enthält? AWT, Swing, JavaFX & SWT 3
T Icon von Frame ändern - Applet AWT, Swing, JavaFX & SWT 2
J Icon einer JCheckBox AWT, Swing, JavaFX & SWT 6
D Swing Anwenungs Icon AWT, Swing, JavaFX & SWT 8
A Swing JTable Icon nur in einer Zelle AWT, Swing, JavaFX & SWT 2
R JTable Header - will links kleines icon hinzufuegen..? AWT, Swing, JavaFX & SWT 6
J Swing JToolBar Button mit Icon AWT, Swing, JavaFX & SWT 4
V [Swing] Overlay Icon AWT, Swing, JavaFX & SWT 5
K Schachbrett / Icon / JButton AWT, Swing, JavaFX & SWT 7
T Abbrechen-Icon entfernen AWT, Swing, JavaFX & SWT 4
S Buttons mit großen Icon AWT, Swing, JavaFX & SWT 7
klattiator Icon und Button zum Schließen in einem Tab AWT, Swing, JavaFX & SWT 3
G Sehr kleine JButtons mit Icon oder Beschriftung AWT, Swing, JavaFX & SWT 2
G Icon ans Ende einer JToolbar AWT, Swing, JavaFX & SWT 7
D Abfrageproblem bei JMenu mit Icon AWT, Swing, JavaFX & SWT 2
K Icon auf JButton mit Wechsel der Farbe AWT, Swing, JavaFX & SWT 2
G Gap zwischen JButton-Rand und JButton-Icon verändern AWT, Swing, JavaFX & SWT 2
G JFrame Icon ändern AWT, Swing, JavaFX & SWT 5
G Icon und Text in JTable darstellen AWT, Swing, JavaFX & SWT 3
S Eclipse Icon Set AWT, Swing, JavaFX & SWT 6
G Icon in JTable AWT, Swing, JavaFX & SWT 9
S Jtree-Icon per Klick auf JBUTTON ändern AWT, Swing, JavaFX & SWT 3
A Icon,zentriert,Farbiger Text alles in einer Tabelle/Spalte ? AWT, Swing, JavaFX & SWT 4
L icon auf Label AWT, Swing, JavaFX & SWT 4
K Icon und Text auf JButton anordnen AWT, Swing, JavaFX & SWT 2
D Icon in MenuItem AWT, Swing, JavaFX & SWT 3

Ähnliche Java Themen

Neue Themen


Oben