Here's a snippet a code for a tooltip combobox
import javax.swing.*;
import javax.swing.event.*;
import javax.swing.text.*;
import java.awt.*;
import java.awt.event.*;
import java.applet.*;
import java.net.*;
import javax.swing.plaf.basic.*;
public class MyComboBox extends JFrame
{
JComboBox cb = new JComboBox();
public static void main(
String args[])
{
MyComboBox combo = new MyComboBox();
}
MyComboBox()
{
setSize(200,50);
cb.setRenderer(new ComboBoxRenderer());
cb.addItem("select something");
cb.addItem("JJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJJ");
cb.addItem("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
cb.addItem("VVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV");
cb.addItem("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA");
getContentPane().add(cb);
show();
}
class ComboBoxRenderer extends BasicComboBoxRenderer
{
public Component getListCellRendererComponent( JList list,
Object value, int index, boolean isSelected, boolean cellHasFocus)
{
if (isSelected)
{
setBackground(list.getSelectionBackground());
setForeground(list.getSelectionForeground());
if (-1 < index)
{
list.setToolTipText(cb.getItemAt(index).toString());
}
}
else
{
setBackground(list.getBackground());
setForeground(list.getForeground());
}
setFont(list.getFont());
setText((value == null) ? "" : value.toString());
return this;
}
}
}
Phil