Comenzaremos hablando del diccionario:
La clase com.jpcomponents.base.SuggestBase sirve de diccionario para los componentes que implementan la funcionalidad suggest.
Básicamente guarda los strings dentro de listas, clasificadas por la primera letra del string, es como un diccionario común y corriente, donde la clave es la primera letra del string.
Por ahora no es necesario saber qué hace exactamente, ya que nos centraremos en los componentes JPSuggestComboBox y JPSuggestTextField.
Los Componentes:
Ambos componentes tienen las siguientes propiedades, accesibles mediante getters y setters:
- minLengthToSearch: es el tamaño mínimo del string que se ingresa para comenzar a sugerir resultados
- maxSuggestLength: es el máximo de resultados que muestra el suggest, ignorando el resto de los resultados, aunque coincidan con el patrón, esto es útil cuando existen muchos resultados para un patrón determinado.
- suggestBase: obtiene o setea el diccionario sobre el cual el componente busca resultados
Estos componentes tienen los siguientes métodos:
- void addString(String value): Agrega un string al diccionario
- void addString(List<String> values): Agrega la coleccion al diccionario
Eventos:
Ambos componentes lanzan dos eventos, uno es lanzado cuando el diccionario no contiene la clave que se está buscando, esto es útil por ejemplo cuando se traen los datos desde la base de datos, si no existe la clave, entonces podemos ir a buscar los resultados a la base de datos y agregarlos al diccionario con los métodos que ya hemos hablado.
El otro es lanzado cuando, a pesar de existir la clave que coincide con el patrón, no se han encontrado resultados que coincidan con el patrón, por ejemplo, tipeamos "jpcomponents", el diccionario contiene la clave "j", pero no contiene el valor "jpcomponents".
Como Usarlos?
Daré un ejemplo con el JPSugestComboBox:
Para instanciarlos, simplemente basta con la siguiente sentencia:
JPSuggestComboBox jpsugg= new JPSuggestComboBox();
si queremos agregar datos al suggest, suponemos que tenemos una lista de strings llamada datos, que queremos agregar al diccionario
jpsugg.addString(datos);
para escuchar los eventos
jpsugg.addSuggestListener(new ISuggestListener() {
public void onNotKeyIsFind(String key) {
//hacer algo si no se encontró la clave
}
public void onNotDataIsFind(String query) {
//hacer algo si no se encontraron resultados
}
});
Descargas:
Puedes descargar la nueva versión desde aquí
Bueno es un poco básico el tuto, así que les recomiendo que los prueben, y me comenten!
Saludos