package combo;
/*
* ComboBoxToolTip.java
*/
import java.awt.*;
import javax.swing.*;
import javax.swing.plaf.basic.*;
public class ComboBoxToolTip extends JFrame {
private JComboBox comboBox;
private String[] items = {"Item 1", "Item 2", "Item 3"};
public ComboBoxToolTip(){
setDefaultCloseOperation(EXIT_ON_CLOSE);
setSize(400, 300);
setLocationRelativeTo(null);
comboBox = new JComboBox(items);
comboBox.setRenderer(new MyRenderer());
getContentPane().add(comboBox, BorderLayout.NORTH);
}
public static void main(final String[] args) {new ComboBoxToolTip().setVisible(true);}
class MyRenderer extends BasicComboBoxRenderer{
public Component getListCellRendererComponent(
final JList list, final Object value, final int index,
final boolean isSelected, final boolean cellHasFocus){
super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
String imageName = "";
String str = value.toString();
if(str.equals("Item 1")) imageName = "file:Picture1.jpg";
if(str.equals("Item 2")) imageName = "file:Picture2.jpg";
if(str.equals("Item 3")) imageName = "file:Picture3.jpg";
setToolTipText("<html>[img]+imageName+[/img]</html>");
return this;
}
}
}