elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: ¿Eres nuevo? ¿Tienes dudas acerca del funcionamiento de la comunidad? Lee las Reglas Generales


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación General
| | |-+  .NET (C#, VB.NET, ASP) (Moderador: kub0x)
| | | |-+  Error con Sub
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Error con Sub  (Leído 3,264 veces)
Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Error con Sub
« en: 24 Enero 2010, 19:23 pm »

Tengo un programa que he estado haciendo y mejorando de un autologger de un juego online llamado Tibia, hoy se me ocurrio agregarle progressbar personalizadas pero a mi manera :xD con este sub que probe en un proyecto nuevo vacio que cree para solo probarlo:
Código
  1.    Public Shared Sub LoadImage(ByVal Pic As PictureBox, ByVal Percent As Integer)
  2.        Dim LoadedBar As New Bitmap(My.Resources.Bar, Pic.Width, Pic.Height)
  3.        Dim Img As New Bitmap(Pic.Width, Pic.Height)
  4.  
  5.        Select Case Percent
  6.            Case 100
  7.                Pic.Image = LoadedBar
  8.            Case 0
  9.                Pic.Image = Nothing
  10.            Case Else
  11.                For X As Integer = 0 To (LoadedBar.Width * (Percent / 100) - 1)
  12.                    For Y As Integer = 0 To (LoadedBar.Height - 1)
  13.                        Img.SetPixel(X, Y, LoadedBar.GetPixel(X, Y))
  14.                    Next
  15.                Next
  16.                Pic.Image = Img
  17.        End Select
  18.  
  19.        Pic.Refresh()
  20.        Img = Nothing
  21.        LoadedBar = Nothing
  22.    End Sub

Consiste en cargar un % de una imagen que obviamente es la barra de progreso completa en un picturebox esto da la sensación de una progressbar; la imagen está es los resources del programa como Bar.png en el proyecto vacio de prueba sirve perfectamente pero si lo pruebo en mi proyecto, se cierra el form desde donde llame el sub y da el siguiente error:
El valor no puede ser nulo. Nombre del parámetro: image
En la linea:
Código
  1. Dim LoadedBar As New Bitmap(My.Resources.Bar, Pic.Width, Pic.Height)
Pero este error no da en el proyecto vacio de prueba, ya me tiene azul y no se que hacer :-(


En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
Skeletron


Desconectado Desconectado

Mensajes: 1.731


A long way to go


Ver Perfil WWW
Re: Error con Sub
« Respuesta #1 en: 24 Enero 2010, 19:30 pm »

EN el depurador, fijate el valor de Pic. Si es NULL.. es porque ahí esta el problema..


En línea

Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: Error con Sub
« Respuesta #2 en: 24 Enero 2010, 19:57 pm »

Resolvi así:
Código
  1.    Public Shared Sub LoadImage(ByVal Pic As PictureBox, ByVal Percent As Integer)
  2.        Dim _
  3.        LoadedBar As New Bitmap("C:\Bar.png"), _
  4.        ResizedBar As New Bitmap(LoadedBar, Pic.Size.Width, Pic.Size.Height), _
  5.        Img As New Bitmap(Pic.Size.Width, Pic.Size.Height)
  6.  
  7.        Select Case Percent
  8.            Case 100
  9.                Pic.Image = LoadedBar
  10.            Case 0
  11.                Pic.Image = Nothing
  12.            Case Else
  13.                For X As Integer = 0 To (ResizedBar.Width * (Percent / 100) - 1)
  14.                    For Y As Integer = 0 To (ResizedBar.Height - 1)
  15.                        Img.SetPixel(X, Y, ResizedBar.GetPixel(X, Y))
  16.                    Next
  17.                Next
  18.                Pic.Image = Img
  19.        End Select
  20.  
  21.        Pic.Refresh()
  22.        Img = Nothing
  23.        LoadedBar = Nothing
  24.    End Sub
Pero no quiero cargarlo desde una ruta quiero cargar desde My.Resources si llamo a mi My.Resources me dice Referencia no establecida como instancia de objecto, no se supone que el objeto como resource ya está creado?
En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Error con Sub
« Respuesta #3 en: 24 Enero 2010, 21:10 pm »

a mi no me queda el codigo igual cuando agrego una imagen a un recurso...debes anteponer el nombre del recurso algo asi..

Código
  1. Dim LoadedBar As New Bitmap(My.Resources.Resource1.nombreimagen)
  2.  

donde Resource1 es el nombre del recurso. y en tu caso pusiste
Código
  1. My.Resources.nombreimagen

es un recurso el que tenes ??

proba borrar el que tenes y insertar uno nuevo Menu->Proyecto->añadir nuevo item y ahi busca "archivo de recurso", insertale la imagen desde "añadir archivo existente"..

saludos.
En línea

Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: Error con Sub
« Respuesta #4 en: 24 Enero 2010, 21:56 pm »

No te entendi muy bien, mi recurso es una imagen PNG llamada Bar que aparece directamente en My.Resources como My.Resources.Bar, además ahora me he dado cuenta que no me deja manipular ningún resource me dice siempre el mismo error "Referencia no establecida como instancia de un objeto"
En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Error con Sub
« Respuesta #5 en: 24 Enero 2010, 22:48 pm »

me pones una captura del panel explorador de soluciones, donde estan los formularios etc.. por favor..es que es practicamente imposible que puedas acceder al nombe de la iamgen sin anteponer el nombre del recurso...imaginate si tenes 20 recursos diferentes, como haces para acceder a lo que tiene cada uno.

¿alguien mas lo ve asi o soy el unico?
« Última modificación: 24 Enero 2010, 22:55 pm por seba123neo » En línea

Keyen Night


Desconectado Desconectado

Mensajes: 496


Nothing


Ver Perfil
Re: Error con Sub
« Respuesta #6 en: 24 Enero 2010, 23:14 pm »



Allí está ;)
En línea

La Fé Mueve Montañas...
                                    ...De Dinero

La programación es más que un trabajo es más que un hobby es una pasión...
seba123neo


Desconectado Desconectado

Mensajes: 3.621



Ver Perfil WWW
Re: Error con Sub
« Respuesta #7 en: 24 Enero 2010, 23:23 pm »

pues esta todo bien, mira yo hice un proyecto nuevo y agrege el primer codigo que pusiste y una imagen de recurso de prueba, y el ejemplo me funciono, crea un progressbar segun el valor que le pongas, y cuando la cargue lo hice asi.

Código
  1. Dim LoadedBar As New Bitmap(My.Resources.Resource1.Bar, Pic.Width, Pic.Height)

donde Resource1 es el nombre del recurso que contiene la imagen, sin ponerle eso te lo subraya como error...

saludos.
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines