Programación General > Visual Basic 6.0 e inferiores

 Problema Con Grid

(1/1)

Angel38:
Hola caballeros un placer saludarlos.

Mi problema es el siguiente.



--- Citar ---Private Sub txtBuscar_KeyUp(KeyCode As Integer, Shift As Integer)
Dim sql As String

  On Error GoTo ManejoError
  griClientes.Clear
  Set conexionbd = New ADODB.Connection
  Set recordset2 = New ADODB.Recordset
  conexionbd.Open "RutaBd"
  sql = "select * from Usuarios where Nombres like '" + txtBuscar.Text + "%'"
  recordset2.Open sql, conexionbd
  recordset2.MoveFirst
  i = 1

 Do While Not recordset2.EOF
    griClientes.Text = "Nombres"
    griClientes.CellBackColor = &HE0E0E0
    griClientes.Col = 1
    griClientes.Text = "Apellidos"
    griClientes.CellBackColor = &HE0E0E0
    griClientes.Col = 0
    griClientes.Rows = i
    texto = recordset2!Nombres + Chr(9) + recordset2!Apellidos + Chr(9)
    griClientes.AddItem texto, i
    recordset2.MoveNext
    i = i + 1
   If txtBuscar.Text = "" Then
      griClientes.Clear
   End If
 Loop

 
ManejoError:
   griClientes.Text = "Nombres"
   griClientes.CellBackColor = &HE0E0E0
   griClientes.Col = 1
   griClientes.Text = "Apellidos"
   griClientes.CellBackColor = &HE0E0E0
   griClientes.Col = 0
End Sub


--- Fin de la cita ---

En este codigo cargo desde un Textbox a la grilla, los nombres y apellidos de un usuario con solo presionar una letra y este automaticamente empieza a mostrar los nombres de los usuarios que comienzan por esa letra, para los principiantes es un ejemplo practico de busqueda. :P

Lo que quiero hacer ahora es darle doble click al nombre que deseo para llevarme toda su información a otro form.
No tengo idea de como hacer eso.
Si se puede manipular el recordset para que me dé el codigo del usuario seria mucho mejor puesto que solo tendria que utilizar un solo campo.

Gracias de antemano por su tiempo. :hola:

ArKaNtOs:
acabo de realizar un codigo sencillo para que te des una idea :)

--- Código: Text --- Dim i As IntegerPrivate Sub Form_Activate()For i = 1 To 14    For j = 1 To 5        msf.Row = i        msf.Col = j        msf.Text = "Hola " & i & "," & msf.Col    NextNextEnd Sub Private Sub msf_DblClick()Dim cad As StringFor x = 1 To 5    msf.Col = x    cad = cad & " " & msf.TextNextForm2.ShowWith Form2    .Label1 = cadEnd WithEnd Sub  
[Modificado aqui]

PD Solo crea un formulario y agregale un msflexgrid y cambiale el nombre por msf
luego crea otro form e inserta un label y correlo :)

Angel38:
Gracias Arkantos. :lol:

Navegación

[0] Índice de Mensajes

Ir a la versión completa