Resumen Hacer boton de busqueda

He reproducido el ultimo ejemplo (que no mande'), mejorandolo. Hay un
inconveniente, no usa un Command button para hacer la busqueda, a busqueda
se lanza en cuanto el usuario pulsa "Enter" en una caja de texto
(inconvenientes?). He creido que es mas practico asi, por que el usuario
solo ha de escribir el nombre (o apellido, o lo que sea) que quiere buscar y
pulsar "Enter", como en el viejo y querido DOS, y la lista de opciones se
llenara solita.
Una vez la lista llena, solo hay que seleccionar un nombre (o apellido , o
lo que sea) en dicha lista y los campos se llenaran solitos.
Cual es la mejora, si eso el lo que dije en mi ultimo mensaje?
Si mirais el ultimo mensaje, vereis que habia una serie de propiedades que
habia que establecer en el form principal. Ya no.
Aqui esta el codigo que hay que poner en el form.


Dim b As Busca ' Crear el objeto principal

Dim db As Database ' Database


Private Sub Form_Load()

  '
  ' Abrir la base de datos
  '
  Set db = OpenDatabase(App.Path & "\db1.mdb")
  Set b = New Busca ' Crear el objeto
  With b
    .Database = db ' Establecer la base de
datos
    .Lista = List1 ' La lista sobre la que
trabajar
    .Form = Me ' กกก Y el formulario!!!
  End With

End Sub

He!! Cuatro lineas!! Tres si no contais la declaracion de la clase
principal!
Esto sirve para *cualquier form*, con *cualquier numero de campos*.
Hay una serie de particularidades.

Se usan las propiedades Tag de los TextBox y ListBox a usar, asi como
LinkTopic.
Por que?
Eehhh... bien, la propiedad Tag es para indicar que ese control se ha de
usar para leer os datos a buscar (TextBox), y el ListBox, para decir que
*esa* es la lista a rellenar. Es decir.
Tenemos dos campos, Nombre y Apellidos en los que queremos hacer las
busquedas, y otros, como direcccion, telefono, etc... que nos importan un
"rabano". Ponemos la propiedad Tag de los controles Nombre y Apellidos a
"Control" (y quien dice la propiedad Tag dice *cualquier* propiedad que os
quede libre, como por ejemplo DataField, que no usareis (por lo menos en los
campos de busqueda)), y la case principal tomara *exactamente* esos campos
para hacer las busquedas. Respecto a la lista, la que tenga la propiedad Tag
con el valor "Control" sera la que se llene de datos.
Y la propiedad LinkTopic? Que pinta aqui? Que yo sepa nadie la usa para
nada!
Ok!! Por eso la he tomado!
En la propiedad LinkTopic ponemos la tabla en donde se han de verificar los
datos, y, mas importante si cabe, el *campo* que se ha de buscar. Luego...
El textbox Nombre tendra la propieda Tag="Control" (sin las comillas) y la
propiedad LinkTopic a...

Table1|Nombre

donde Table1 es la tabla donde voy a hacer la busqueda, y "Nombre" es el
nombre del campo donde voy a hacer esa busqueda. ( | es el caracter ASCII
124).

El codigo esta muy, muy comentado (espero que os llegue, esta vez no me he
olvidado).
Espero que os guste!!



Download busca.zip  



Resumen Resumen

Visual Basic Página de Visual Basic

Página principal Página principal

www.jrubi.com