Hola, tengo mitabla de artículos de inventario y las fotos en una carpeta aparte, como hago para ir viendo en un formulario los registros y a su ves la foto. Gracias
1 Respuesta
Respuesta de rastadj
1
1
rastadj, Derick Salazar, Coorporacion Imb-Pc Ciudad De Guatemala
En tu tabla deberías tener un campo de tipo character donde guardes la ruta de este archivo en tu disco duro o cualquier otra unidad. Cada vez que cambies el registro la propiedad picture de tu control de imagen le dices que es la ruta que deseas. Por ej. Local VarRuta VarRuta = Tabla.Ruta Thisform.Image1.picture = &VarRuta Date cuenta del símbolo & que te permite trabajar como una macro (busca más info en la ayuda) Y solamente...! Ahora bien si quieres puedes usar esta otra lógica, cierta vez alguien me hizo una pregunta parecida y esta fue la respuesta: Hola, Primero que nada recuerda que el campo general almacena objetos ole, contiene una referencia de diez bytes al contenido actual del campo: como por ejemplo una hoja de cálculo, un documento de procesador de textos o una imagen, creada por otra aplicación. (Solo para recordarnos) Ahora bien, el comando Append General Importa un objeto OLE de un archivo y lo coloca en un campo general. Hagamos un pequeño ejemplo: CREATE TABLE mypicture (foto G) &&creamos una tabla que contenga un campo tipo general llamado mypicture. Foto. APPEND BLANK && Agrega un registro en blanco. Append General mypicture.foto from c:\miimagen.bmp class image Lo que hicimos es agregar una imagen que tenemos en el disco duro especificando que la clase base de esta gráfica sera Image. Hasta acá ibas, solo para asegurarnos que estamos hablando de lo mismo, y para recordarme un poco... je je Ok. No nos queda mas que mostrarlo en el form. Creas el form y en el entorno de datos agregas la tabla MyPicture que tiene ya un registro ingresado. Ahora bien recuerda que al principio mencione que lo que guardaba el campo general era un objeto ole, fíjate bien "No una imagen" es muy diferente, ya que a la hora de mostrarlo en el formulario necesitas agregar un control tipo Ole "no un control de imagen" (acá es donde todos cometemos el error, no se si te paso a ti) Entonces agregamos un ActitiveX Bound Control (OleBoundControl) que esta en la barra de controles. (El que el icono tiene negro con azul no el que es solo negro) y luego en la propiedad ControlSource de este control especificas el campo que tiene tu imagen, En este caso MyPicture. Foto Esto te permitirá utilizar la imagen como cualquier otro dato en un registro de la tabla. Espero esto es lo que tratabas de hacer. Existe otra forma para trabajar con imágenes (como archivo en una ruta o directorio aparte) pero esa es otra historia. Hasta la próxima, Derick Salazar Guatemala
Obviamente el código lo tienes que poner cada vez que refresques el formulario o cambies de registro, que se yo en siguiente o en tu procedimiento o clase de navegación... esto lo decides tu para tu caso personal. Esto no sera en el control de imagen. Esto ya lo trabaje antes, no se por que no te funciona prueba poner la variable publica, definiendola en el init del form Public VarRuta Var_Ruta = "" Luego la utilizas en tu procedimiento de actualizar datos... No se donde lo tienes si en un valid o en un botón siguiente o como lo tengas. Thisform.Image1.Picture = &varruta Tendría que funcionar... Saludos, Derick Salazar Guatemala