• Jueves 7 de Noviembre de 2024, 23:37

Autor Tema:  CONECTAR COMBO CON ARCHIVO DE TEXTO  (Leído 3098 veces)

vicky_cava

  • Nuevo Miembro
  • *
  • Mensajes: 1
    • Ver Perfil
CONECTAR COMBO CON ARCHIVO DE TEXTO
« en: Jueves 23 de Octubre de 2008, 19:18 »
0
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

  • Miembro MUY activo
  • ***
  • Mensajes: 269
  • Nacionalidad: co
    • Ver Perfil
    • http://ingenieriacivil.foroactivo.com
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #1 en: Jueves 23 de Octubre de 2008, 20:31 »
0
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
  1. Private Sub Form_Load()
  2. Combo1.AddItem "Hola Moskito"
  3. Combo1.AddItem "Hola F_Tanori"
  4. Combo1.AddItem "Te animo a que estudies Vicky"
  5. Combo1.AddItem "Te quiero mucho Toph"
  6. Combo1.ListIndex = 3
  7. End Sub
  8.  
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
  1. Combo1.List(Numero_entero)
  2.  
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
  1. Private Sub Command1_Click()
  2.     MsgBox (Combo1.List(2))
  3. End Sub
  4.  
  5.  

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
  1. Open RutaArchivo For Output As #FreeFile
  2.  
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
  1. Print #FreeFile, Dato_A_Escribir
  2.  
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
  1. Private Sub Command2_Click()
  2.     Dim i As Integer
  3.    
  4.         Open "C:MiBloc.TXT" For Output As #1
  5.         For i = 0 To Combo1.ListCount - 1
  6.             Print #1, Combo1.List(i)
  7.         Next i
  8.         Close #1
  9. End Sub
  10.  
  11.  

Listo, hasta aqui ya se puede ejecutar.

Saludos



Nota:
Yo quiero mucho a Toph


Yo quiero mucho a Toph ---> Mi Web]http://ingenieriacivil.foroactivo.com[/url]

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #2 en: Jueves 23 de Octubre de 2008, 20:37 »
0
:D  :good:

fraj

  • Nuevo Miembro
  • *
  • Mensajes: 19
    • Ver Perfil
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #3 en: Viernes 24 de Octubre de 2008, 21:18 »
0
gracias man x el dato  :good:  :good:

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #4 en: Domingo 26 de Octubre de 2008, 00:48 »
0
Cita de: "Jimbenit"
 FreeFile es una constante de Visual Basic para asignar un numero de archivo al archivo creado (para este caso)

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
  1.  
  2.         Open "C:archivo_12.txt" For Output As #FreeFile  ' es el fichero 1
  3.         MsgBox FreeFile
  4.         Open "C:archivo_13.txt" For Output As #FreeFile  ' es el 2
  5.         MsgBox FreeFile     ' el siguiente apuntaría al 3
  6.         Close
  7.         MsgBox FreeFile  ' como se cerraron todos ahora el fichero libre sería el 1
  8.         Open "C:archivo_14.txt" For Output As #FreeFile   ' es el fichero 1
  9.         MsgBox FreeFile
  10.         Open "C:archivo_15.txt" For Output As #FreeFile  ' es el fichero 2
  11.         MsgBox FreeFile
  12.         Open "C:archivo_16.txt" For Output As #FreeFile ' es el fichero 3
  13.         MsgBox FreeFile  ' el siguiente libre es el 4 aunque no lo usamos
  14.  
  15.  
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
  1. Open RutaArchivo For Output As #FreeFile
  2. Print #FreeFile, Dato_A_Escribir
  3.  
ya que la apertura se refiere aun fichero y luego su uso se referencia a otro...
«Ma non troppo»
----> ModoVacaciones = False<----

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #5 en: Domingo 26 de Octubre de 2008, 02:14 »
0
Cita de: "Nebire"
... ejemplo en el siguiente caso:

Código: Visual Basic
  1.  
  2.         Open "C:archivo_12.txt" For Output As #FreeFile  ' es el fichero 1
  3.         MsgBox FreeFile
  4.         Open "C:archivo_13.txt" For Output As #FreeFile  ' es el 2
  5.         MsgBox FreeFile     ' el siguiente apuntaría al 3
  6.         Close
  7.         MsgBox FreeFile  ' como se cerraron todos ahora el fichero libre sería el 1
  8.         Open "C:archivo_14.txt" For Output As #FreeFile   ' es el fichero 1
  9.         MsgBox FreeFile
  10.         Open "C:archivo_15.txt" For Output As #FreeFile  ' es el fichero 2
  11.         MsgBox FreeFile
  12.         Open "C:archivo_16.txt" For Output As #FreeFile ' es el fichero 3
  13.         MsgBox FreeFile  ' el siguiente libre es el 4 aunque no lo usamos
  14.  
  15.  

Disculpando mi Injerencia :P, pero  esta mal numerado el archivo_15 ya que seria el 3 , el archivo_16 el  5  y el ultimo pasaria a ser 6 :P , un errorcillo leve en los comentario

Cita de: "Jimbenit"
...Por último agregamos un elemento de ese combo box a un bloc de notas...
Cita de: "Jimbenit"
...Analizamos la siguiente linea , responsable de escribir datos en el bloc de notas...

Bueno creo ya haberlo leido por ahi, un achivo de texto no se llama bloc de notas :P, el bloc de notas es una aplicacion,

OffTopic:
En lo personal veo mucho animo por parte de  Jimbenit lo cual es muy bueno pues el foro es para ayudar, pero ayudar a aprender, tanto para el que pregunta como para el que responde y para todos los que leen; hay una frase que dice algo asi:


"No le des al niño el pescado enseñalo a pescar, asi no solo comerá un dia, comerá toda la vida"


Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

Nebire

  • Miembro HIPER activo
  • ****
  • Mensajes: 670
    • Ver Perfil
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #6 en: Domingo 26 de Octubre de 2008, 02:54 »
0
Cita de: "F_Tanori"

[Disculpando mi Injerencia :P, pero  esta mal numerado el archivo_15 ya que seria el 3 , el archivo_16 el  5  y el ultimo pasaria a ser 6 :P , un errorcillo leve en los comentario
Saludos

Hola F_Tanori, no importa la injerencia, de hecho no lo es y no , no es ningún errorcillo, los comentarios son correctos (en cuanto al número indicado al menos  :devil: ) si te fijas bién CERRÉ todos los archivos abiertos con 'close', por tanto freefile después de 'close' simepre volverá a ser 1 otra cosa es que le dijera 'close # x'

De hecho la idea era ilustrar que abriendo y cerrando ficheros FreeFile va variando... por eso abro, ciero, abro...   para que se vea como fluye...
«Ma non troppo»
----> ModoVacaciones = False<----

F_Tanori

  • Moderador
  • ******
  • Mensajes: 1919
  • Nacionalidad: mx
    • Ver Perfil
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #7 en: Lunes 27 de Octubre de 2008, 01:50 »
0
Tienes Razon , me he confundido pensando otra cosa  :P , y el errorcillo se factura para mi :P
una disculpa por el despiste.


Saludos
" ExIsTo y A vEcEs PiEnSo "

NOTA:
===========================================================================================================================
Este foro es para ayudar, aprender, compartir... usenlo para eso,
NO SE RESUELVEN DUDAS POR MENSAJE PRIVADO Y MENOS POR CORREO
===========================================================================================================================

m0skit0

  • Miembro de PLATA
  • *****
  • Mensajes: 2337
  • Nacionalidad: ma
    • Ver Perfil
    • http://fr33kk0mpu73r.blogspot.com/
Re: CONECTAR COMBO CON ARCHIVO DE TEXTO
« Respuesta #8 en: Lunes 27 de Octubre de 2008, 09:45 »
0
Cita de: "Nebire"
FreeFile no es una constante, sino una instrucción

Pues, hala, yo también sé de injerencias. No es una instrucción, sino una función.  :hola: