Combobox Button mit Grafik versehen

cr3m4

Mitglied
Hallo,

wie der Titel schon andeutet, habe ich eine Standard-JCombobox, bei der statt der button mit dem DreiecksSymbol, eine gif-Datei eingebunden werden soll.
Ich habe allerdings keine Ahnung welche Methoden ich dafür nehmen kann.
habe schon diverse Foren angeklappert, jedoch erfolglos.

wäre euch für Anregungen sehr Dankbar
 
hi

ich weiß nicht ob es eine "sauberere" Methode gibt... aber hier:

Code:
package combobox.button.image;

import java.awt.BorderLayout;
import java.awt.Component;

import javax.swing.ImageIcon;
import javax.swing.JComboBox;
import javax.swing.JFrame;
import javax.swing.plaf.metal.MetalComboBoxButton;

public class JComboBoxTest extends JComboBox{
    ImageIcon ic = new ImageIcon(this.getClass().getResource("testIcon.gif"));
    
    public JComboBoxTest(){
        MetalComboBoxButton bt = null;
        for (Component comp : this.getComponents()){
            if (comp instanceof MetalComboBoxButton) {
                bt = (MetalComboBoxButton) comp;
            }
        }
        bt.setComboIcon(ic);

    }
    
    public static void main(String[] args) {
        JFrame fr = new JFrame();
        fr.add(new JComboBoxTest(), BorderLayout.NORTH);
        fr.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        fr.setSize(800, 600);
        fr.setVisible(true);
    }
}
 
Zurück