Quantcast
Channel: GUJ - Tópicos com a tag java
Viewing all articles
Browse latest Browse all 17410

Renderizar ComboBox

$
0
0

@Rafael_Matos escreveu:

Estou precisando fazer com que ao apertar qualquer letra do alfabeto dentro do jComboBox render ele set a o item correspondente a letra teclada. Exemplo: JComboBox com nacionalidade, Aperto a letra B, ele vai direto para o primeiro item com a letra B. (exemplo, Brasil).

No ComboBox default (ou seja o normal, sem utilizar o render) já faz isso automaticamente. Porém meu ComboBox possui imagem. E com isso ele não faz isso automaticamente. Mas pelo meu conhecimento, provavelmente aplicando uma função dentro do meu comboBox render já seria o suficente para resolver o problema. Ou talvez a forma de como está o setIcon no comboBox render esteje bloqueando isso...

Vou postar o código do meu ComboBox Render, funcionando normal.

public class Renderizar_ComboBox extends JLabel implements ListCellRenderer
{
protected DefaultListCellRenderer defaultRenderer = new DefaultListCellRenderer();

    @Override
    public Component getListCellRendererComponent(JList list, Object val, int index, boolean selected, boolean focused) {

    JLabel renderer = (JLabel) defaultRenderer.getListCellRendererComponent(list, val, index,
    selected, focused);
        //GET VALUES
        BeansBandeiras it=(BeansBandeiras) val;
        //TelaAdicionarClube ta=(TelaAdicionarClube) val;
        //SET VALUES
        renderer.setIcon(it.getImg());
        renderer.setText(it.getName());

        if (selected) {
            list.setToolTipText(((BeansBandeiras) val).name);
            //list.setBackground(null);
            //list.setForeground(null);
            //setBackground(list.getSelectionBackground());
            //setForeground(list.getSelectionForeground());
            setBackground(Color.LIGHT_GRAY);

        if (-1 < index) {
            //list.setToolTipText(tooltips[index]);
            list.setToolTipText(((BeansBandeiras) val).name);
            }
        }

        else {
            //list.setToolTipText(((BeansBandeiras) val).name);
            //setBackground(list.getSelectionBackground());
            //setForeground(list.getSelectionForeground());
            setBackground(Color.WHITE);                
        }

        //setFont(list.getFont());
        return renderer;
    }

}

Mensagens: 1

Participantes: 1

Ler tópico completo


Viewing all articles
Browse latest Browse all 17410