Test Foro de elhacker.net SMF 2.1

Programación => Programación General => Java => Mensaje iniciado por: kinos en 27 Octubre 2009, 17:12 PM

Título: problema, ruta de los recursos. non-static method... No puedo poner una imagen.
Publicado por: kinos en 27 Octubre 2009, 17:12 PM
Hola:  :-\

  Estoy intentando cargar una imagen del directorio de los recursos para que luego no haya problemas con rutas erroneas y demás. El problema es que no puedo ponerle la ruta con estos metodos que utilizo porque me salta un error que dice "non-static method..."

Código (java) [Seleccionar]

public class DesktopApplication extends SingleFrameApplication {

   @Override
   protected void startup() {
       show(new DesktopApplicationView(this));
   }

   @Override
   protected void configureWindow(java.awt.Window root) {
   }

   public static DesktopApplication getApplication() {
       return Application.getInstance(DesktopApplication4.class);
   }

   public static void main(String[] args) {
   
   URL url = getClass().getResource("imagen.jpg");
    //error: non-static method getClass() cannot be referenced from a static context
   this.getClass().getResource("imagen.jpg");
    //error: non-static variable this cannot be referenced from a static context

    System.out.println(Toolkit.getDefaultToolkit().getImage("splash.jpg"));
    //null

    launch(DesktopApplication.class, args);
   }
}


Lo que hago es intentar ver con system.out.println() las rutas de la imagen pero o son null, o no puedo ejecutar por lo de non-static... dependiendo de la linea que ponga.
Título: Re: problema, ruta de los recursos. non-static method... No puedo poner una imagen.
Publicado por: -Ramc- en 27 Octubre 2009, 17:43 PM
Con qué línea te sale lo de non-static, por cierto, pon el error completo, supongo que será con la primera y es debido a que no creas ninguna instancia y no llamas al método desde ella.
Título: Re: problema, ruta de los recursos. non-static method... No puedo poner una imagen.
Publicado por: kinos en 27 Octubre 2009, 18:10 PM
vale, ya he puesto lo del error. Es que lo he puesto para simplificar pero me dejado unas cuantas cosas. Estoy haciendo una aplicacion de escritorio con el netbeans, una de los proyectos que te viene por defecto cuando creas una nueva aplicacion. El caso es que quiero añadirle un splashScreen para que salga mientras se va cargando la aplicacion. Si cargo la ruta desde una url de internet pues sin problemas. Pero cuando quiero setearle la ruta para que la coja de sus recursos... nada
Título: Re: problema, ruta de los recursos. non-static method... No puedo poner una imagen.
Publicado por: kinos en 27 Octubre 2009, 20:39 PM
Gracias, ya esta solucionado.

He escrito en la clase del splashScreen -->
image = Toolkit.getDefaultToolkit().getImage(getClass().getClassLoader().getResource("desktopapplication/resources/splashScreen.jpg"));

Y por ahora funciona bien  :silbar: