Visual Basic.NET - Labels dinamicos y picturebox como fondo.

 
Vista:

Labels dinamicos y picturebox como fondo.

Publicado por Christian (3 intervenciones) el 11/02/2010 18:34:25
Buenas,

Tengo el siguiente problema... creo un cierto numero de labels dinamicamente, y me gustaria que cogieran de fondo la imagen que haya en un picturebox estatico, el problema es que no consigo que se quede el fondo del picturebox, si no que me pone el fondo del form, y aparecen las labels por encima del picturebox con el fondo del form.

Como puede solucionarlo?

Gracias!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
sin imagen de perfil

RE:Labels dinamicos y picturebox como fondo.

Publicado por Joan F (129 intervenciones) el 11/02/2010 20:50:50
Hola,

Por defecto una label tiene la propiedad backcolor establecida al color de un control de windows (que esta definido en el sistema) que es el mismo que el backcolor por defecto de un formulario.

Para solventar el problema, cuando creas la label tienes que establecer la propiedad backcolor al color transparente con:

Label.BackColor = Color.Transparent

Saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Labels dinamicos y picturebox como fondo.

Publicado por Christian (3 intervenciones) el 11/02/2010 21:56:49
Aun asi, sigue cogiendo el color del fondo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:Labels dinamicos y picturebox como fondo.

Publicado por Joan F (129 intervenciones) el 12/02/2010 04:58:33
mmm....

A ver, creo que no te entendí bien lo que quieres hacer.

Si lo que quieres es que las labels esten encima del picturebox con la imagen i que se vea la imagen del picturebox a traves de la label, la forma es como te he respuesto anteriormente, poniendo el background color a transparente.

Si en cambio lo que quieres és poner una imagen de fondo especifica para el label a partir de una imagen cargada en el picturebox1, entonces lo que se ha de hacer es una copia de la imagen del picturebox i establecer la imagen como fondo del label. El código seria:

Dim nuevaImagen As Bitmap

Using imagenOriginal As Bitmap = New Bitmap(PictureBox1.Image)
nuevaImagen = imagenOriginal.Clone()
Label.Image = nuevaImagen
End Using

El problema con esto es que si la imagen es muy grande o bien no se ajusta bien a la label, el resultado puede no quedar muy bien. También has de considerar que si generas muchas labels cargando una imagen con cada una puedes cargar mucho la memoria del sistema.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar