Programación General > Visual Basic para principiantes
CONECTAR COMBO CON ARCHIVO DE TEXTO
vicky_cava:
buenas .. la cuestion es la siguiente
tengo q conectar un combo con un archivo de texto (.txt)
tambien si me podrian decir como leerlo en flexgrid seria de mucha ayuda para mii
gracias
Jimbenit:
Hola, lee con atencion la siguiente informacion
Hace un rato, respondi un mensaje sobre conectar un listbox con un archivo de texto (t invito a que lo mires, ya que su solucion es muy similar a tu problema). Gracias a Dios contesté muy bien ese mensaje sobre como debia hacerce, pero me regañaron por que en este foro no se hacen tareas, en lugar de eso, se anima a la persona a investigar y a APRENDER pero no copiando y pegndo codigo, sino comprendiendo el codigo... debido a esa filosofia, en este foro se combate toda clase de pereza en leer sobre VB6.0.
Siguiendo esa coriente, te animo a que comprendas lo que a continuación te dire, digamos que es como "una pista" a tu solución:
Abre un proyecto de VB6.0 en blanco, aparecera el formulario vacio
El ejemplo que te explicare lo hare sobre este formulario
como me imagino que ya sabes escribir los datos de un combo, por ejemplo añadamos en el combo1 los elementos (agrega un combobox1 al formulario) y en el evento Load del formulario agrega este codigo
--- Código: Text ---Private Sub Form_Load()Combo1.AddItem "Hola Moskito"Combo1.AddItem "Hola F_Tanori"Combo1.AddItem "Te animo a que estudies Vicky"Combo1.AddItem "Te quiero mucho Toph"Combo1.ListIndex = 3End Sub Los elementos se almacenan con un numero entero (integer) iniciando con el primero como elemento cero (0)
Si necesitas referirte a algun elemento especifico del combo1, debes usar lo siguiente:
--- Código: Text ---Combo1.List(Numero_entero) donde Numero_entero es un numero entero entre cero (0) y el numero de elementos en tu ComboBox1 menos 1
Bien, hasta aqui espero que me hallas entendido, ahora, como ejemplo, en ese formulario, agrega un CommandButton1. agrega la siguiente linea de codigo en su evento click
--- Código: Text ---Private Sub Command1_Click() MsgBox (Combo1.List(2))End Sub
ejecutalo y mira , esta es la forma de llamar a elementos individuales de un combobox.
Por último agregamos un elemento de ese combo box a un bloc de notas:
Mira con atencio la siguiente linea de codigo:
--- Código: Text ---Open RutaArchivo For Output As #FreeFile Open : es una palabra clave de VB que indica que se abre un archivo
RutaArchivo : es solo una cadena donde se encuentra la ruta en donde se va aguardar el archivo
For Output As : Es un modo que le indica a VB que el archivo se creará para almacenar informacion. Existen otros modos como For Append Shared o For Input As, etc (mas informacion la puedes conseguir en cualquier manual de VB6.0)
FreeFile es una constante de Visual Basic para asignar un numero de archivo al archivo creado (para este caso)
Analizamos la siguiente linea , responsable de escribir datos en el bloc de notas
--- Código: Text ---Print #FreeFile, Dato_A_Escribir Print #: es una palabra clave que le indica a VB que debe escribir elementos en un archivo de texto
Dato_A_Escribir: es el valor de cadena o numero o lo que sea (excepto objeto) que se desea escribir en el archivo de texto
Siguiendo con nuestro ejemplo, agrega un CommandButton2, en el evento click de ese boton agrega las siguientes lineas:
--- Código: Text ---Private Sub Command2_Click() Dim i As Integer Open "C:MiBloc.TXT" For Output As #1 For i = 0 To Combo1.ListCount - 1 Print #1, Combo1.List(i) Next i Close #1End Sub
Listo, hasta aqui ya se puede ejecutar.
Saludos
Nota:
Yo quiero mucho a Toph
m0skit0:
:D :good:
fraj:
gracias man x el dato :good: :good:
Nebire:
--- Cita de: "Jimbenit" --- FreeFile es una constante de Visual Basic para asignar un numero de archivo al archivo creado (para este caso)
--- Fin de la cita ---
FreeFile no es una constante, sino una instrucción que devuelve el siguiente número de fichero libre... y conviene asignarlo a una variable y usar esa durante todas las referencias a ese fichero ya que si se usa directamente puede llevar a error por ejemplo en el siguiente caso:
--- Código: Visual Basic --- Open "C:archivo_12.txt" For Output As #FreeFile ' es el fichero 1 MsgBox FreeFile Open "C:archivo_13.txt" For Output As #FreeFile ' es el 2 MsgBox FreeFile ' el siguiente apuntaría al 3 Close MsgBox FreeFile ' como se cerraron todos ahora el fichero libre sería el 1 Open "C:archivo_14.txt" For Output As #FreeFile ' es el fichero 1 MsgBox FreeFile Open "C:archivo_15.txt" For Output As #FreeFile ' es el fichero 2 MsgBox FreeFile Open "C:archivo_16.txt" For Output As #FreeFile ' es el fichero 3 MsgBox FreeFile ' el siguiente libre es el 4 aunque no lo usamos Cualquier instrucción para operar después con un fichero abierto como sabremos cual es ???, si necesitamos hacer algo en el fichero_14.txt que número tiene ? hay alguna forma de saberlo ahora ???. Simplemente no.
De hecho el código que diste más arriba fallará...
--- Cita de: "Jimbenit" ---
--- Código: Visual Basic ---Open RutaArchivo For Output As #FreeFilePrint #FreeFile, Dato_A_Escribir
--- Fin de la cita ---
ya que la apertura se refiere aun fichero y luego su uso se referencia a otro...
Navegación
[#] Página Siguiente
Ir a la versión completa