Pesquisar neste blog

segunda-feira, 13 de fevereiro de 2012

Simulando DBLookUpComboBox para capturando chave do valor selecionado no JComboBox

Esta dica é uma referencia a versão original do seguinte link:

http://tech.chitgoks.com/2009/10/05/java-use-keyvalue-pair-for-jcombobox-like-htmls-select-tag/

Ela demonstra como trabalhar com um campo chave e uma descrição em um jComboBox. Isso é muito útil para quem vem do Delphi e está acostumado com o DbLookUpComboBox. Para elucidar a questão, segue abaixo código do objeto a ser adicionado aos itens do combo box:



public class KeyValue {
 String key, value;
 
 public KeyValue(String key, String value) {
  this.key = key;
  this.value = value;
 }
 
 public String getValue() { return value; }
 public String getKey() { return key; }
 
 @Override
 public String toString() { return key; }
 
 @Override
 public boolean equals(Object obj) {
  if (obj instanceof KeyValue) {
   KeyValue kv = (KeyValue) obj;
   return (kv.value.equals(this.value));
  }
  return false;
 }
 
 @Override
 public int hashCode() {
  int hash = 7;
  hash = 97 * hash + (this.value != null ? this.value.hashCode() : 0);
  return hash;
 }
}
 
 



Agora segue um exemplo de como adicionar os itens ao jComboBox:

jComboBox1.addItem(new KeyValue("Valor a ser exibido", "Campo Chave"));


Para recuperar o valor do campo chave, pode ser usado o seguinte código:

String value = ((KeyValue) jComboBox.getSelectedItem()).getValue();


Seria isso.



Cordialmente;




Claudir Pereira dos Santos


Matelândia, 13/02/2012

Nenhum comentário:

Postar um comentário