Vous êtes sur la page 1sur 2

IMGENES DE INTERNET EN FORMULARIO1

Vamos a ver, a travs de este ejemplo, cmo podemos


mostrar las imgenes que tengamos guardadas en Internet
en un formulario. Lgicamente lo que vamos a guardar en
nuestra BD no va a ser la imagen en s, sino que
guardaremos simplemente la ruta (url) al archivo de
imagen, y Access se encargar del resto.

El requisito deseable para que nuestro invento funcione


bien que las imgenes tengan las mismas dimensiones, o,
como mnimo, dimensiones muy parecidas. Ello es as
porque el control ActiveX que vamos a utilizar no tiene el
mismo comportamiento que un control de imagen (un
picture box).
Es decir, que as como el PictureBox nos permite varias vistas de la imagen (zoom, recortar y
extender) el ActiveX que usaremos en este ejemplo no dispone de estas propiedades. Se
podra cambiar por programacin, pero no es la idea de este ejemplo. As que... ojo con las
dimensiones de las imgenes!

Qu pasa si mis imgenes tienen dimensiones diferentes? Pues que si dibujamos el ActiveX
muy grande la imagen quedara ridcula, y si la imagen es ms grande que el control nos
aparecern unas barras vertical y horizontal de desplazamiento. Tampoco es una cosa tan
grave, pero ya es un poco molesto.

Ni que decir tiene que si no tenemos conexin a Internet... mi gozo en un pozo... je, je...

Vamos a ver cmo funcionara la cosa.

1.- Creamos una BD en blanco.

2.- Creamos una tabla en la BD, a la que llamaremos TImagenes. Esta tabla contendr dos
campos:

[Id] Autonumrico
[DirWeb] Texto (en este campo guardaremos el url de la imagen). Como las
direcciones suelen ser largas pensad en darle tamao al campo. Si no os basta con los
255 caracteres que acepta este tipo de campo deberamos convertirlo en tipo Memo

3.- Creamos un formulario basado en la tabla TImagenes. Guardamos ese formulario como
FImagenes.

4.- Situamos FImagenes en vista diseo y le damos al botn de insertar un control ActiveX.
Navegamos por los controles disponibles hasta encontrar uno llamado <Microsoft
WebBrowser>. Lo dimensionamos a nuestro gusto pensando en las medidas de las imgenes.

5.- Sacamos las propiedades de ese cuadro de imagen y nos vamos a la pestaa Otras->
Nombre, y ah escribimos miWebImag.

6.- Sacamos las propiedades del formulario. Nos vamos a la pestaa Otras->Ciclo, y situamos
su valor en Registro activo.

Por qu hacemos esto? Porque nos interesa ver los resultados tras escribir el nombre de la
imagen. Al ser el ltimo campo, si le diramos a ENTER o tabulacin el formulario nos llevara a
un nuevo registro. Al situar el ciclo en registro activo conseguimos que la tabulacin se

1 La BD de ejemplo os la podis bajar aqu.

1
Vistame en http://siliconproject.com.ar/neckkito/
mueva dentro de los campos del mismo registro.

7.- Sacamos las propiedades del campo [DirWeb] y nos


vamos a la pestaa Eventos-> Despus de actualizar, y le
generamos el siguiente cdigo:

-
Private Sub DirWeb_AfterUpdate()
'Definimos las variables y asignamos valores
Dim vUrl As String
vUrl = Nz(Me.DirWeb.Value, "")
'Si no se ha escrito ningn valor sale del
procedimiento
If vUrl = "" Then Exit Sub
'Situamos el webBrowser en visible (por si no lo estuviera debido al cdigo asignado
'al Form_Current) y asignamos la variable vUrl como origen del ActiveX
With Me.miWebImag
.Visible = True
.Navigate vUrl
End With
End Sub
-

Ahora ya tenemos el registro preparado, pero debemos ocuparnos del comportamiento del
webBrowser cuando nos desplazamos por los registros. Utilizaremos el sistema de volver
visible o invisible el control ActiveX en funcin de si hay url en el campo o no. Vamos a ver
cmo podemos conseguir eso.

8.- Situamos FImagenes en vista diseo y sacamos las propiedades del formulario. Nos
situamos en la pestaa Eventos->Al activar registro, y escribimos el siguiente cdigo:

-
Private Sub Form_Current()
Dim vUrl As String
vUrl = Nz(Me.DirWeb.Value, "")
'Si no hay direccin web ocultamos el webBrowser
If vUrl = "" Then
Me.miWebImag.Visible = False
'Si hay imagen mostramos el webBrowser y le asignamos la url
Else
With Me.miWebImag
.Visible = True
.Navigate vUrl
End With
End If
End Sub
-

Y en principio eso es todo. A disfrutar de las imgenes!

Espero que este ejemplo os sea til y podis adaptarlo a vuestras BD's.

Suerte!

2
Vistame en http://siliconproject.com.ar/neckkito/

Vous aimerez peut-être aussi