Problema ComboBox

Iniciado por Jareth, 18 Diciembre 2006, 21:09 PM

0 Miembros y 1 Visitante están viendo este tema.

Jareth

Hola,quiero llenar un combobox,con el texto que tenga en un archivo .txt.Pero solo quiero que se cojan 10 de las palabras del texto,el texto se llena con lo que se introduce en el combobox,es decir un historial,que la palabra que metemos,se mete en el txt,y luego,nos aparezca en el combobox,como que se ha buscado.
aqui el code:

Dim cadena() As String
Dim i As Byte
Open App.Path & "\log.txt" For Input As #1
For i = 1 To 10
Line Input #1, cadena(i)
Next i
Close #1
Combo1.AddItem cadena(i)

Open App.Path & "\log.txt" For Append As #1
    Print #1, Combo1.Text
    Close #1

Bueno,lo de eliminar o sobreescribir,lo sé,pero lo de llenar el combobox no.

~~

Tienes q usar el evento addItem mira un ejemplo:

With Combo1
.AddItem "Carlos"
.AddItem "Pedro"
.AddItem "Carolina"
.AddItem "Mariano"
.AddItem "Martin"
.AddItem "Laura"
End With


Ahora con un For lo llenas con los de tu archivo de texto y ya esta
1S4ludo  ;)

Jareth

El problema es coger los datos del txt.
Gracias.

Hans el Topo

Cita de: Jareth en 19 Diciembre 2006, 20:13 PM
El problema es coger los datos del txt.
Gracias.

esta mil millones de veces explicado por el foro dale al botón de buscar que te saldran cientos de ejemplos xD
 

Jareth

#4
Bueno,ya lo solucioné,aqui el code:Dim linea As String, col() As String
Dim i As Byte
Data1.DatabaseName = App.Path & "\lib.mdb"
Data1.RecordSource = "tabla2"
Open App.Path & "\log.txt" For Input As #1

While Not EOF(1)
Line Input #1, linea

For i = 1 To 1
Combo1.AddItem (linea)

Ahora lo que quiero,es que al escribir,te salga abajo una palabra ya buscada,parecida,como google,o cuando escribes una web,te sale las que has visto y que se parecen.
Gracias.

CeLaYa

pues lo que se me ocurre esque uses un textbox y un List, cuando tengas el enfoque del text haces visible el list y cuando lo pierda ocultas otra vez el list


Private Sub Text1_GotFocus()
List1.Visible = True
List1.Top = Text1.Top + Text1.Height
End Sub

Private Sub Text1_LostFocus()
List1.Visible = False
End Sub


para que te vaya haciendo una lista de acuerdo a lo que escribas en el textbox podrias hacer un filtrado:


private sub Text1_Change()
Data1.DatabaseName = App.Path & "\lib.mdb"
Data1.RecordSource = "SELECT * FROM tabla2 WHERE Campo LIKE '" & text1.text & "*' ORDER BY Campo ASC;"
data1.refresh

While Not EOF(1)
     list1.additem trim(tb.Field(0))
     data1.recordset.MoveNext
wend
end sub



espero te sirva de algo
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.

CeLaYa

perdón me equivoque esque estaba viendo tu código y se barrio el tornillo


private sub Text1_Change()
Data1.DatabaseName = App.Path & "\lib.mdb"
Data1.RecordSource = "SELECT * FROM tabla2 WHERE Campo LIKE '" & text1.text & "*' ORDER BY Campo ASC;"
data1.refresh

While Not data1.Recordset.Eof
     list1.additem trim(tb.Field(0))
     data1.recordset.MoveNext
wend
end sub
"La soledad es el elemento de los grandes talentos".
Cristina de Suecia (1626-1689) Reina de Suecia.