escribir en combobox
Publicado por sandra (86 intervenciones) el 01/06/2008 03:02:18
Hola. Como estan todos?
Tengo una consultita,
tengo un combobox q tiene una lista de datos de un recorset. el combo me permite seleccionar o ir escribiendo.
Lo q necesito es q no me permita escribir palabras q tiene en la lista. Osea si yo escribo una letra c y no encuantra nada con C al principio q no me permita seguir tipiando. el codigo q tengo para el combo box es este:
Bueno espero aberme explicado bien,,, desde ya gracias por leer mi mensaje.
saludos.....
form_load
Dim recor As ADODB.Recordset
Dim i As Integer
Me.cbopaciente.Clear
Set recor = New ADODB.Recordset
recor.Open "Select pacientes.doc_paciente as cod,PACIENTES.apellido_paciente as Apellido, PACIENTES.nombre_paciente as Nombre From pacientes where pacientes.estado like '" & Alta & "'", cnn, adOpenStatic, adLockBatchOptimistic
For i = 1 To recor.RecordCount
cbopaciente.AddItem recor("Apellido") & ", " & recor("Nombre")
recor.MoveNext
Next i
recor.Close
End Sub
Private Sub cbopaciente_Change()
Dim Cadena As String
If Len(Me.cbopaciente.Text) > 30 Then
Cadena = Left(Me.cbopaciente, 30)
Me.cbopaciente.Text = Cadena
Me.cbopaciente.SelStart = Len(Cadena)
End If
End Sub
Private Sub cbopaciente_KeyUp(KeyCode As Integer, Shift As Integer)
Dim LenText As Long, ret As Long
'Si los caracteres presionados están entre el 0 y la Z
If KeyCode >= vbKey0 And KeyCode <= vbKeyZ Then
ret = SendMessage(cbopaciente.hwnd, &H14C&, -1, ByVal cbopaciente.Text)
If ret >= 0 Then
LenText = Len(cbopaciente.Text)
cbopaciente.ListIndex = ret
cbopaciente.Text = cbopaciente.List(ret)
cbopaciente.SelStart = LenText
cbopaciente.SelLength = Len(cbopaciente.Text) - LenText
End If
End If
End Sub
Tengo una consultita,
tengo un combobox q tiene una lista de datos de un recorset. el combo me permite seleccionar o ir escribiendo.
Lo q necesito es q no me permita escribir palabras q tiene en la lista. Osea si yo escribo una letra c y no encuantra nada con C al principio q no me permita seguir tipiando. el codigo q tengo para el combo box es este:
Bueno espero aberme explicado bien,,, desde ya gracias por leer mi mensaje.
saludos.....
form_load
Dim recor As ADODB.Recordset
Dim i As Integer
Me.cbopaciente.Clear
Set recor = New ADODB.Recordset
recor.Open "Select pacientes.doc_paciente as cod,PACIENTES.apellido_paciente as Apellido, PACIENTES.nombre_paciente as Nombre From pacientes where pacientes.estado like '" & Alta & "'", cnn, adOpenStatic, adLockBatchOptimistic
For i = 1 To recor.RecordCount
cbopaciente.AddItem recor("Apellido") & ", " & recor("Nombre")
recor.MoveNext
Next i
recor.Close
End Sub
Private Sub cbopaciente_Change()
Dim Cadena As String
If Len(Me.cbopaciente.Text) > 30 Then
Cadena = Left(Me.cbopaciente, 30)
Me.cbopaciente.Text = Cadena
Me.cbopaciente.SelStart = Len(Cadena)
End If
End Sub
Private Sub cbopaciente_KeyUp(KeyCode As Integer, Shift As Integer)
Dim LenText As Long, ret As Long
'Si los caracteres presionados están entre el 0 y la Z
If KeyCode >= vbKey0 And KeyCode <= vbKeyZ Then
ret = SendMessage(cbopaciente.hwnd, &H14C&, -1, ByVal cbopaciente.Text)
If ret >= 0 Then
LenText = Len(cbopaciente.Text)
cbopaciente.ListIndex = ret
cbopaciente.Text = cbopaciente.List(ret)
cbopaciente.SelStart = LenText
cbopaciente.SelLength = Len(cbopaciente.Text) - LenText
End If
End If
End Sub
Valora esta pregunta
0