Problemas Swingx AutoCompleteDecorator + InputVerifier[Resolvido]

4 respostas
vanderlanio

Senhores
Não estou conseguido usar a classe InputVerifier em um JComboBox que usa o AutoCompleteDecorator do swingx ( versão 1.6 ) , ele não chama a validação, alguém já conseguiu resolver isso ???

Obrigado !

4 Respostas

M

Bom, você poderia postar parte do seu código para que possamos entender o que você está fazendo?

vanderlanio
//A Classe AbstractValidator<T extends JComponent> extends InputVerifier

public class ComboBoxObrigatorio extends AbstractValidator<JComboBox> {

	public ComboBoxObrigatorio(JComboBox c) {
		super(c);
	}

	@Override
	protected Validator validation(JComboBox text) {
		if(text.getSelectedItem().equals("")){
			return new Validator(ValidatorType.ERROR,
					"Campo de preenchimento obrigatório.");
		}
		return new Validator();
	}

}

Criação da JCombo classe SwingUtil

public JComboBox getComboBanco() {
		if (comboBanco == null) {
			comboBanco = SwingUtil.getCombo(Arrays.asList(Bancos.values()),
					true);
			comboBanco.addItemListener(new PopularComboSecaoListener(
					comboBanco, getComboSecao()));
			comboBanco.setInputVerifier(new ComboBoxObrigatorio(comboBanco));
			AutoCompleteDecorator.decorate(comboBanco);
		}
		return comboBanco;
	}

O Codigo funciona caso eu comente o decorator.

vanderlanio

vanderlanio:
Senhores
Não estou conseguido usar a classe InputVerifier em um JComboBox que usa o AutoCompleteDecorator do swingx ( versão 1.6 ) , ele não chama a validação, alguém já conseguiu resolver isso ???

Obrigado !

Senhores
Consegui realizar a chamada da classe InputVerifier !

JTextField object = (JTextField) comboBox.getEditor().getEditorComponent();
		object.setInputVerifier(new TextFielderObrigatorio(object));
M

Certo, parabéns pela solução.

Classifique o tópico com resolvido.

Boa sorte

Criado 23 de novembro de 2011
Ultima resposta 23 de nov. de 2011
Respostas 4
Participantes 2