11

JComboBoxに画像を表示する必要があります

4

2 に答える 2

11

String の代わりに Icon をモデルに追加するだけです。

import java.awt.*;
import javax.swing.*;

public class ComboBoxIcon extends JFrame
{
    JComboBox comboBox;

    public ComboBoxIcon()
    {
        Object[] items =
        {
            new ImageIcon("about16.gif"),
            new ImageIcon("add16.gif"),
            new ImageIcon("copy16.gif")
        };
        comboBox = new JComboBox( items );
        getContentPane().add( comboBox, BorderLayout.NORTH );
    }

    public static void main(String[] args)
    {
        JFrame frame = new ComboBoxIcon();
        frame.setDefaultCloseOperation( EXIT_ON_CLOSE );
        frame.pack();
        frame.setLocationRelativeTo( null );
        frame.setVisible( true );
    }
}
于 2010-10-18T23:27:55.533 に答える
2

あなたが望むことをするように見えるこの例を見てください。

http://www.java2s.com/Code/Java/Swing-JFC/CustomComboBoxwithImage.htm

探しているのは、JComboBox のカスタム レンダラーです。レンダラーは単なる JComponent であるため、コンポーネント (必要なアイテムが含まれている JPanel) を作成できれば、考えられるほぼすべての結果を作成できます)。標準の JComponents を使用するだけでは不十分な場合は、ペイント メソッドをオーバーライドすることもできます。

于 2010-10-18T11:31:02.540 に答える