Gif animado en cada registro de formulario

¿Se puede poner un gif animado en un formulario igual que un objeto ole?. Mi idea es hacer un formulario que muestre un gif animado diferente conforme se van pasando los registros, y que esos gif, es estén vinculados a una ruta del Equipo.

1 respuesta

Respuesta
2

Sí puedes, pero no en un control "imagen" (se verá una imagen fija, no la animación), sino en un control "navegador web".

Para que te cambie el gif con cada registro, has de programar el evento "Al activar registro" del formulario con un código como éste (si tu campo se llama GIF y el explorador ExploradorWeb, y en el campo guardas solo el nombre del archivo sin extensión)

Dim miRuta As String
miRuta = "C:\Users\Feromonas\Pictures\GIFs"
Me.ExploradorWeb.ControlSource = "='" & miRuta & "\" & Me.GIF & ".gif'"

Por otro lado, si la ruta depende de la ubicación de la BD (por ejemplo la carpeta GIFs está en la misma carpeta que la BD), puedes hacer:

Dim miRuta As String
miRuta = Application.CurrentProject.Path
Me.ExploradorWeb.ControlSource = "='" & miRuta & "\" & Me.GIF & ".gif'"

Has de tener en cuenta cómo se forma la cadena que se pasa como origen de control al explorador web: un signo igual (=), seguido de comilla simple ('), la ruta completa al archivo con su extensión y otra comilla simple al final.

Si por lo que fuera tu ruta contiene comillas simples, has de usar Replace para cambiarla por doble comilla simple, por ejemplo:

Const miRuta As String = "D:\Svein's Docs\Mis imágenes\Animados\"
Me.ExploradorWeb.ControlSource = "='" & Replace(miRuta, "'", "''") & Me.GIF & ".gif'"

Te dejo un ejemplo (sin control de errores) para que lo veas en funcionamiento: http://filebig.net/files/WHzdKSez6c 

Un saludo.


     bit.ly/ForoNkSv 

Gracias, pero funciona para versiones de Office 2010 y superiores. Se me pasó decirte que yo utilizo 2007 y no va. El objeto de Explorador Web no existe en 2007, o eso creo.

Ummm, vale, si usas Access 2007 (o anterior), tendrás que usar el navegador web que está en los objetos ActiveX. La idea es la misma, pero cambia la forma de asignarle la ruta del GIF, pues tendrás que usar .Navigate en vez de .ControlSource.

Si no recuerdo mal, la ruta la has de indicar algo así:

Me. ExploradorWeb.Navigate "file://" & miRuta & "/" & Me.GIF & ".gif"

Si te ves con ganas vete probando, porque yo hasta mañana por la mañana no tengo acceso a un PC con Access 2007 para darte la instrucción exacta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas