[Resolvido]Desabilitar Seleção JList

3 respostas
RenatoDeSouza

Olá pessoal!

Alguém sabe me dizer como desabilitar a seleção de uma JList?
Isto é, não permitir que o usuário selecione um item da JList.

Obrigado!

3 Respostas

R
jlist.setEnabled(false);
RenatoDeSouza

Então, sem ser o setEnabled(false), por que deixa a lista com a aparencia de desabilitada.

Queria uma solução que estendesse um Renderer ou algo do tipo…

RenatoDeSouza

Para quem interessar:

Classe interna extendendo JLabel e implementando ListCellRenderer:

class MyCellRenderer extends JLabel implements ListCellRenderer
	{
		public MyCellRenderer()
		{
			setOpaque( true );
		}
	 
		public Component getListCellRendererComponent(JList list,
								Object value,
								int index,
								boolean isSelected,
								boolean isEnabled
								)
		{
			setText(value.toString());
	 
			if (isSelected)
			{
				setBackground(new Color(184,207,229));
				setForeground(list.getSelectionForeground());
			}
		 	else
		 	{
				setBackground(Color.white);
			   	setForeground(list.getForeground());
			}	 
			return this;
		}
	}

Depois é só criar uma um objeto ListCellRenderer instanciado pela MyCellRenderer e colocar esse objeto no metodo setCellRenderer da JList.

Isso é util para criar uma tela estilo wizard.

Valeu

Criado 26 de agosto de 2010
Ultima resposta 26 de ago. de 2010
Respostas 3
Participantes 2