![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|
|
#1
|
||||
|
||||
|
Tu ejemplo me ayuda mucho porque porlomenos BUSCA el item. Ahora yo quiero aprender como pasar ese item (y los que les siguen) a una tabla.
|
|
#2
|
||||
|
||||
|
Hola kbaby... el siguiente código es un ejemplo de lo que buscas:
El código funciona, siempre que busques el DNI. Si buscas el apellido o cualquier otro dato no vas a obtener lo que deseas... Hice el supuesto de que siempre están disponibles todos los datos, de otro modo el algoritmo falla. Para hacerte una idea de porque funciona. piensa al listBox como una lista. Y cada elemento ocupa una posición. Código:
0 - DNI 1 - Nombre 2 - Apellido 3 - Teléfono 4 - DNI 5 - Nombre 6 - Apellido 7 - Teléfono Es por ello que al encontrar la posición del DNI, la copio a la posición [1,1] del stringGrid, luego, exploro las siguientes 3 posiciones y las añado a la posición [i,1]. ¿Porqué sacamos siempre el valor del Indice? Pues porque si te fijas, al final de cada bucle FOR incremento (la función inc()) la variable indice en 1. Y esto hace que con cada pasada, se obtenga el siguiente elemento del ListBox. Inc(indice) es análogo a indice := indice + 1; inc(indice, 2) es análogo a indice := indice + 2; Analiza el código que te pasee y ve de que manera se adapta a lo que buscas. Muchas de las cosas que preguntas tienen tanto de lógica como del uso del uso de las propiedades de los objetos que empleas. No temas pulsar F1 al seleccionar un objeto. Por ejemplo, si no sabes como usar el StringGrid, arrastra uno al form, seleccionalo y presiona F1. Obtendrás la ayuda. El inglés no es pretexto, habiendo traductores on-line como off-line. Saludos, |
|
#3
|
||||
|
||||
|
Tio, muchas gracias, me entere fenomenal. Ahora viene la segunda parte... ver si yo puedo. Ahora te aviso.
|
|
#4
|
||||
|
||||
|
Primer problema que me surge:
"Estoy intentando que el programa lea un archivo .txt previamente creado con los datos puestos: nombre apellido nombre apellido (esto es una prueba) Bueno el problema es que cuando le doy a "recuperar" pues me lo lee y sale en el LISTBOX pero con un espacio entre nombre y apellido... así: pepe //aqui hay un espacio que no había gomez // aquí tambien juan // aqui tambien lopez El codigo es: Código Delphi [-]var f:textfile; n:string; begin assignfile(f,'nombres.txt'); reset(f); while not eof(f) do begin readln(f,n); edit1.Text:=n; button1.Click; //añadir ¿en mis apuntes sale ke tengo que poner esto... pq? button2.Click; //lo que hace es volcar end; closefile(f); end; end. |
|
#5
|
||||
|
||||
|
kbaby, el TListBox cuenta con los métodos LoadFromFile y SaveToFile que hace todo el trabajo más fácil.
LoadFromFile abre un archivo y lo muestra. SaveToFile lo guarda. El archivo que se genera es como aparece en el ListBox. Cada texto en un "renglón". Es decir que si en un ListBox tienes esto (cada uno en una linea): Código:
Hola como estas kbaby yo aqui un poco adivinando lo que hace ese button1.click y también desorientado con el button2.click El problema con ese código puede deberse al Readln() ya que eso hace que se pase al siguiente "renglón". El porque en tus apuntes invocas a un Button1.Click y luego a un Button2.Click lo desconozco... es cosa de tus apuntes... y pues... no estoy allí para ver que es lo dicen. ![]() Si nos aportaras más datos podría saber el modo de ayudarte. Saludos, |
|
#6
|
||||
|
||||
|
Cita:
Problema solucionado, fue simplemente ir probando, el código quedaría así:
Lo que hace el boton añadir es irse esto: Mete la 1º linea del .txt en el edit1.text, luego la 2º linea en el edit2.text y así hasta las cuatro lineas y luego las añade al listbox. Esto lo repite hasta llegar al final. Luego lo vuelca en la tabla. He quitado lo de volcarlo porqueno me interesa volcar TODO. Duda: ¿Cabe la posibilidad de recuperar la información del .TXT en el LISTBOX sin tener que hacerlo de mi manera tan "cutre"?. Última edición por kbaby fecha: 26-05-2008 a las 20:29:24. |
|
#7
|
||||
|
||||
|
Primer problema que me surge:
"Estoy intentando que el programa lea un archivo .txt previamente creado con los datos puestos: nombre apellido nombre apellido (esto es una prueba) Bueno el problema es que cuando le doy a "recuperar" pues me lo lee y sale en el LISTBOX pero con un espacio entre nombre y apellido... así: pepe //aqui hay un espacio que no había gomez // aquí tambien juan // aqui tambien lopez El codigo es:
|
|
#8
|
||||
|
||||
|
¿Por qué utilizas el Inc(indice)?
Es lo único que no me ha quedado claro. Yo pulso f1, y lo leo, pero no veo como se adapta lo que a mí me han enseñando y no puedo llevar algo que no haya yo enseñado. Ahora si yo el " Inc(indice)" lo adapto a lo que me han enseñado pues sí. Espero me comprendas. |
|
#9
|
||||
|
||||
|
Cita:
cuando uno hace:
Lo que consigues es incrementar tu_variable en 1. Al hacer:
Lo que consigues es incrementar tu variable en 5. De cualquier manera, puedes sustituir, como he dicho, a inc() por su equivalente:
¿El porqué uso la variable indice para incrementar? Pues... para ahorrarme otra variable. Si te fijas, la uso inicialmente para localizar la posición de un texto. Y si se dicha posición puedo saber la de los demás. Si el archivo SIEMPRE contendrá TODOS los datos y en dicho ORDEN, con saber la posición del DNI se puede conocer la de los demás datos. Por ejemplo: Nombre ocupa la posición siguiente a indice. Lo que se traduce a Indice + 1. Apellido ocupa la posición siguiente a Nombre. Traducido: indice + 2. Telefono ocupa la posición siguiente a Apellido. Traducido: indice + 3. Con cada paso del bucle FOR, no sólo me desplazo sobre la fila del StringGrid, sino también sobre el indice del ListBox. ¿Me vas entendiendo? Saludos, |
|
#10
|
||||
|
||||
|
Entendido
Gracias profe ![]() |
![]() |
| Herramientas | Buscar en Tema |
| Desplegado | |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Ayuda con código. | wofox | Varios | 6 | 11-12-2007 01:16:21 |
| Ayuda con un codigo | JoNieve | C++ Builder | 0 | 21-04-2007 13:27:33 |
| Ayuda con error en codigo :-( | jorgegetafe | Varios | 6 | 07-02-2007 20:29:04 |
| Codigo de Barras.... Ayuda!!!!! | adolfoz | Varios | 14 | 15-11-2006 18:13:55 |
| Ayuda con código de barras | ramiretor | Varios | 0 | 28-06-2003 01:42:58 |
|