Como agregar una imagen de mis recursos a un picture box???

Iniciado por Hartigan, 17 Septiembre 2010, 05:13 AM

0 Miembros y 1 Visitante están viendo este tema.

Hartigan

Pues eso como se agrega una imagen en TIEMPO DE EJECUCIón (osea por código), la cual he agregado como archivo a mi proyecto???

Lo quiero así porque es un picture box que va cambiando de imágen dependiendo de la opción que se elija y por tanto tienen que ser imágenes fijas no puedo dar una ruta a una carpeta sin más porque si se mueve la carpeta ya no cargaría la imágen...

Salu2.

Shell Root

Supongo que es esto,
Código (vbnet) [Seleccionar]
' Replace "filename" below with the actual file name for the JPG
'   file you added as a resource; the name is case-sensitive.
' Also make sure that "WindowsApplication1" is replaced with the
'   name of your project, if different.
Dim s As Stream = Me.GetType().Assembly.GetManifestResourceStream("WindowsApplication1.filename.jpg")
Dim bmp As Bitmap = New Bitmap(s)
s.Close()
Dim g As Graphics = CreateGraphics()
g.DrawImage(bmp, 0, 0)
bmp.Dispose()
g.Dispose()

:http://support.microsoft.com/kb/324566/es
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

raul338

Código (vbnet) [Seleccionar]

Picture1.Image = My.Resources.MiFoto1


En C# un lugar de My usa el mismo nombre del proyecto

[D4N93R]

Cita de: Hartigan en 17 Septiembre 2010, 05:13 AM
Pues eso como coño se agrega una imagen en TIEMPO DE EJECUCIón (osea por código), la cual he agregado como archivo a mi proyecto???

El "Coño" está de más :)

Hartigan

Cita de: Shell Root en 17 Septiembre 2010, 05:19 AM
Supongo que es esto,
Código (vbnet) [Seleccionar]
' Replace "filename" below with the actual file name for the JPG
'   file you added as a resource; the name is case-sensitive.
' Also make sure that "WindowsApplication1" is replaced with the
'   name of your project, if different.
Dim s As Stream = Me.GetType().Assembly.GetManifestResourceStream("WindowsApplication1.filename.jpg")
Dim bmp As Bitmap = New Bitmap(s)
s.Close()
Dim g As Graphics = CreateGraphics()
g.DrawImage(bmp, 0, 0)
bmp.Dispose()
g.Dispose()

:http://support.microsoft.com/kb/324566/es

gracias luego pruebo.

Cita de: raul338 en 17 Septiembre 2010, 14:20 PM
Código (vbnet) [Seleccionar]

Picture1.Image = My.Resources.MiFoto1


En C# un lugar de My usa el mismo nombre del proyecto

no, no me deja, no me lo reconoce

Cita de: [D4N93R] en 17 Septiembre 2010, 15:11 PM
Cita de: Hartigan en 17 Septiembre 2010, 05:13 AM
Pues eso como coño se agrega una imagen en TIEMPO DE EJECUCIón (osea por código), la cual he agregado como archivo a mi proyecto???

El "Coño" está de más :)

jejejje, tienes razón pido disculpas. xD

Hartigan

No me ha funcionado nada, asíque he optado por crear varios pictureBox y los voy ocultando y mostrando...

gracias a todos.

seba123neo

Cita de: Hartigan en 18 Septiembre 2010, 03:15 AM
No me ha funcionado nada, asíque he optado por crear varios pictureBox y los voy ocultando y mostrando...

gracias a todos.

si no te funciona lo del recurso es porque algo mal estas haciendo, porque esto es bien facil. tenes que poner un punto de interrupcion y ver lo que hace el codigo, programar no es pegar codigo y si funciona listo, y si no funciona otra cosa. seguro la variable de tipo Stream te esta quedando en Nothing porque no te carga la imagen y por eso no funciona.

vos en el post dijiste que no queres dar paths por las dudas mueven las carpetas, bueno una solucion facil seria que pongas las imagenes en el mismo path del .exe y asi por mas que muevan las carpetas siempre te carga las imagenes, solo que si te mueven las imagenes  obvio no te va a funcionar(pero eso sucede con cualquier programa que carga las imagenes desde rutas, le moves la imagen y palmo)

si queres ver porque no te funciona, pone el codigo que usas y lo vemos.

saludos.
La característica extraordinaria de las leyes de la física es que se aplican en todos lados, sea que tú elijas o no creer en ellas. Lo bueno de las ciencias es que siempre tienen la verdad, quieras creerla o no.

Neil deGrasse Tyson