Código en Delphi 6, válido para Delphi for win32 y CodeGear RAD Studio (Delphi win32) | ||
Este componente es un descendiente de TCustomEdit
y las propiedades métodos y eventos serán los mismos que
los del componente "TEdit" con
las siguientes características nuevas.
Para empezar, tiene internamente un StringList
en el que se irán guardando los distintos valores se vayan introduciendo
en la instancia (control) de este componente. Esta lista se actualiza
al salir el foco del control.
Posee una serie de métodos y propiedades que nos permitirán
movernos y buscar los distintos valores de la susodicha lista.
Propiedades:
CaseSensitive: Las búsquedas de cadenas con sensitivas a mayúsculas y minúsculas.
Duplicates: Se permiten o no duplicados de cadenas.
Sorted: La lista de cadenas está ordenada en orden alfabético.
IndexValue: Número que indica el índice actual de la lista.
Value: Último valor encontrado.
Métodos
Add: Añade la cadena que se le pasa como parámetro al método. Automáticamente el propio control lo llama cuando pierde el control vara guardar el valor del mismo.
Locate : Localiza una cadena dentro de la lista de cadenas guardadas por el componente, hace una búsqueda secuencial en la lista. (Boolean)
Contains : Localiza la primera cadena que contiene la subcadena que se pasa como parámetro. (Boolean)
BeginWith: Localiza la primera cadena que empieza con la subcadena que se pasa como parámetro. (Boolean)
FindNext : Busca la siguiente cadena, y lo hace según el método empleado en la primera búsqueda (Locate, Contains, BeginWith) (Boolean)
Next : Incrementa el índice de la lista en uno y devuelve la cadena.
Previous : Decrementa el índice de la lista en uno y devuelve la cadena.
GetListValues : Devuelve la lista de cadenas en un StringList. Las modificaciones que se hagan sobre esta lista se estarán haciendo sobre la original, así que si añadimos alguna cadena nueva ésta se habrá añadido a la lista del componente.
Take : El control toma el valor de la última cadena buscada.