Hallo, ich habe ein Problem mit einer JComboBox, mit Hilfe eines ListCellRenderer erweitere ich die Liste zur Darstellung von ImageIcons zu den Einträgen, ich habe allerdings das Problem, dass anfangs kein Text hinter dem Icon steht, wenn ich die Combobox anklicke erscheint in der Liste der Text, nach der Auswahl ist der Text nciht sichtbar. Wenn ich allerdings eine Action ausführe (Button drücke) erscheint der Text aufeinmal, bei neuauswahl ist er wieder verschwunden. Hinter dem Button liegt keine Action, erst einfach nur auf dem ContentPane().
Ich habe schon verschiedene Objecte mit repaint oder revailidate versucht zu aktualisieren, allerdings ohne Erfolg. Hat jemand vieleicht schonmal das selbe Problem oder ne Ahnung was passiert wenn ein leerer Button gedrückt wird, also was da neu gezeichnet wird?
Vielen Dank!
Code:
ImageIcon[] images;
String[] titel;
// Die Arrays mit Titel und ImageIcons werden woanders gefüllt
class ListBoxRenderer extends JLabel implements ListCellRenderer {
@Override
public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
int selectedIndex = ((Integer) value).intValue();
ImageIcon icon = images[selectedIndex];
setIcon(icon);
setText(titel[selectedIndex]);
repaint();
return this;
}
}
Ich habe schon verschiedene Objecte mit repaint oder revailidate versucht zu aktualisieren, allerdings ohne Erfolg. Hat jemand vieleicht schonmal das selbe Problem oder ne Ahnung was passiert wenn ein leerer Button gedrückt wird, also was da neu gezeichnet wird?
Vielen Dank!