Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

localizar registro en tdbgrid

Estas en el tema de localizar registro en tdbgrid en el foro de Visual Basic clásico en Foros del Web. como hago para que cuando a medida que pulso letras dentro de un textbox me vaya recorriendo en tdbgrid segun sea la letra para localizar ...
  #1 (permalink)  
Antiguo 27/03/2007, 11:19
 
Fecha de Ingreso: febrero-2004
Mensajes: 29
Antigüedad: 20 años, 2 meses
Puntos: 0
localizar registro en tdbgrid

como hago para que cuando a medida que pulso letras dentro de un textbox me vaya recorriendo en tdbgrid segun sea la letra para localizar un registro?


gracias
  #2 (permalink)  
Antiguo 28/03/2007, 00:51
 
Fecha de Ingreso: noviembre-2005
Mensajes: 751
Antigüedad: 18 años, 5 meses
Puntos: 13
Re: localizar registro en tdbgrid

Hola

Yo lo que hago es ir filtrando los registros según escribo en el textbox, es decir, dejo solo aquellos que cumplan la condición.

Para ello en el evento Change del text1 cambio el Source del recordset con el que tengo asociado el TDBGrid (pongo una nueva select en la que con la condición where indico el filtro), una vez cambiado el source indico al tdbgrid su nuevo recordset (Set Rejilla.DataSource = Reg).

--Saludos--
  #3 (permalink)  
Antiguo 28/03/2007, 12:02
 
Fecha de Ingreso: febrero-2004
Mensajes: 29
Antigüedad: 20 años, 2 meses
Puntos: 0
Re: localizar registro en tdbgrid

un poco de codigo para ver lo gracias, que me pierdo, pero en lugar que solo salgan los filtrados lo que quiero es que recorra el tdbgrid hasta localizar el registro


gracias de todas formas
  #4 (permalink)  
Antiguo 29/03/2007, 00:36
 
Fecha de Ingreso: noviembre-2005
Mensajes: 751
Antigüedad: 18 años, 5 meses
Puntos: 13
Re: localizar registro en tdbgrid

Hola

Te dejo el código que utilizo, en mi caso voy filtrando los datos, pero supongo que lo podrás adaptar a tus necesidades. El código es para buscar un proveedor, y en el formulario tengo un combo para seleccionar por que campo de la tabla desea buscar, creando una select diferente para cada caso.

Código:
Private Sub Text1_Change()

    If Reg.State Then Reg.Close
    Me.MousePointer = 11
    If Len(Trim(Text1.Text)) > 0 Then
        Select Case Combo1.Text
            Case "Nombre"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where empresa like '%" & Trim(Text1.Text) & "%' Order by empresa"
            Case "Tipo Empresa"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where [tipo empresa] like '%" & Trim(Text1.Text) & "%' Order by empresa"
            Case "Observaciones"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where observaciones like '%" & Trim(Text1.Text) & "%' Order by empresa"
            Case "Dirección"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where direccion like '%" & Trim(Text1.Text) & "%' Order by empresa"
            Case "Población"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where poblacion like '%" & Trim(Text1.Text) & "%' Order by empresa"
            Case "Provincia"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where provincia like '%" & Trim(Text1.Text) & "%' Order by empresa"
            Case "Pais"
                Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores where pais like '%" & Trim(Text1.Text) & "%' Order by empresa"
        End Select
    Else
            Reg.Source = "select empresa, telefonos, Observaciones,Direccion,Poblacion,Provincia,Pais from proveedores Order by empresa"
    End If
            
    Reg.Open
    
    With Rejilla
        Set .DataSource = Reg
        .Refresh
    End With
    
    Formato_Grid
    Me.MousePointer = 0
    
End Sub
--Saludos--
  #5 (permalink)  
Antiguo 30/03/2007, 14:57
 
Fecha de Ingreso: febrero-2004
Mensajes: 29
Antigüedad: 20 años, 2 meses
Puntos: 0
Re: localizar registro en tdbgrid

gracias por el codigo pero me lio que es un gusto, yo lo que quiero es desde un textbox a media que voy tecleando por ejemplo el nombre, me vaya recorriendo todo el tdbgrid hasta encontrarlo, si me lo pudieras explicar ya que soy un poco profano estoy haciendo mis primeros pinitos con los controles tdbgrid pero gracias de todas formas


saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:14.