Foros del Web » Programación para mayores de 30 ;) » Java »

Problema/duda en java

Estas en el tema de Problema/duda en java en el foro de Java en Foros del Web. Hola, primero que nada gusto en saludar primera vez que escribo por aca, posteo porque estoy un poco aproblemado con un juego que realize en ...
  #1 (permalink)  
Antiguo 09/03/2011, 07:56
 
Fecha de Ingreso: enero-2011
Ubicación: Bogota
Mensajes: 4
Antigüedad: 13 años, 3 meses
Puntos: 0
Problema/duda en java

Hola, primero que nada gusto en saludar primera vez que escribo por aca, posteo porque estoy un poco aproblemado con un juego que realize en java por el netbeans, lo que sucede es lo siguiente el juego al compilarlo dentro de netbeans me funciona de maravillas, perfecto!....Pero cuando cree el .jar el juego igual funciona bien funcionan los botones, menu, marcadores, cronometro, etc, solo que no me aparece la imagen principal que es el tablero, miren aqui les muestro unas imagenes con el juego ejecutado dentro del netbeans y luego imagenes del juego ejecutado desde el .jar creado previamente.

1-Menu del juego ejecutado desde el netbeans


2-Tablero del juego ejecutado desde el netbeans


3-Menu del juego ejecutado desde el ejecutable(.jar)


4-Tablero del juego ejecutado desde el ejecutable(.jar)


Ven que en la imagenes 3 y 4 el menu se me ve bien y que cuando paso al tablero se ven los marcadores, conometros y la informacion, pero nose ve el tablero en si, las imagenes rojas y blancas para luego poder jugarlo colocando las fichas.

Espero que alguien me ayude, no entiendo que sucede, el .jar lo cree bien segun mi parecer, cualquier aporte sirve.

Saludos de antemano muchas gracias.
  #2 (permalink)  
Antiguo 09/03/2011, 14:01
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 20
Respuesta: Problema/duda en java

hola


puede que tu imagen este fuera del JAR

deverias verificar eso

esto te puede servir

Código java:
Ver original
  1. ImageIcon image=new ImageIcon(getClass().getResource("images/tablero.jpg"));

saludos
  #3 (permalink)  
Antiguo 09/03/2011, 14:53
 
Fecha de Ingreso: enero-2011
Ubicación: Bogota
Mensajes: 4
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Problema/duda en java

No, lo que sucede es que el tablero no es solo una imagen, sino que son imagenes de color blanco y rojo que la coloco mediante un if mira observa.



Código Java:
Ver original
  1. public Tablero(Funciones controlador)
  2. {
  3. this.controlador=controlador;
  4.     setLayout(new GridLayout(8,8));
  5.     setBorder(new TitledBorder("Tablero 8 Reinas"));
  6.  
  7. labCuadro= new JLabel[8][8];
  8.  
  9.     int contador=0;
  10.    
  11.     for(int i=0;i<8;i++)
  12.     {
  13.     for(int j=0;j<8;j++)
  14.         {
  15.         labCuadro[i][j] = new JLabel();
  16.                 labCuadro[i][j].setName(i+">"+j);
  17.         labCuadro[i][j].addMouseListener(this);
  18.                 labCuadro[i][j].addMouseMotionListener(this);
  19.  
  20.             if(contador&#37;2==0){
  21.                 labCuadro[i][j].setIcon(new ImageIcon("./src/Imagen/CuadroBlanco.png"));
  22.             }
  23.             else{
  24.                 labCuadro[i][j].setIcon(new ImageIcon("./src/Imagen/CuadroRojo.png"));
  25.        
  26.             }
  27.            
  28.             add(labCuadro[i][j]);
  29.             contador++;
  30.     }
  31.         contador++;
  32.     }
  33.  
  34. }//fin constructor Tablero


El Jlabel que uso ya lo defini mas arriba en mi codigo e importe la libreria javax.swing.JLabel

Lo que podria hacer es colocar una sola imagen(llamada tablero) que contenga el tablero completo con los 64 cuadradros, y no uno por uno como lo tengo yo, resulta que intente eso pero no me resulto, porque me aparecio el tablero pero no podia colocar las fichas encima de cada cuadrado.

Última edición por rodrigo1986; 09/03/2011 a las 15:01
  #4 (permalink)  
Antiguo 09/03/2011, 15:10
Avatar de sivadmp  
Fecha de Ingreso: febrero-2011
Ubicación: La Paz - Bolivia
Mensajes: 293
Antigüedad: 13 años, 2 meses
Puntos: 20
Respuesta: Problema/duda en java

esta bien lo que haces, pero adiciona getClass().getResource() para que lo reconosca tu imagen
Código java:
Ver original
  1. labCuadro[i][j].setIcon(new ImageIcon(getClass().getResource("./src/Imagen/CuadroBlanco.png")));
  #5 (permalink)  
Antiguo 09/03/2011, 15:51
 
Fecha de Ingreso: enero-2011
Ubicación: Bogota
Mensajes: 4
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Problema/duda en java

Código Java:
Ver original
  1. Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
  2.         at javax.swing.ImageIcon.<init>(ImageIcon.java:167)
  3.         at Juego.Tablero.<init>(Tablero.java:42)
  4.         at Juego.Interfaz.<init>(Interfaz.java:21)
  5.         at Juego.Juego_Principal.jBjugarActionPerformed(Juego_Principal.java:204)
  6.         at Juego.Juego_Principal.access$000(Juego_Principal.java:5)
  7.         at Juego.Juego_Principal$1.actionPerformed(Juego_Principal.java:46)
  8.         at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
  9.         at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
  10.         at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
  11.         at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
  12.         at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
  13.         at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
  14.         at java.awt.Component.processMouseEvent(Component.java:6267)
  15.         at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
  16.         at java.awt.Component.processEvent(Component.java:6032)
  17.         at java.awt.Container.processEvent(Container.java:2041)
  18.         at java.awt.Component.dispatchEventImpl(Component.java:4630)
  19.         at java.awt.Container.dispatchEventImpl(Container.java:2099)
  20.         at java.awt.Component.dispatchEvent(Component.java:4460)
  21.         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
  22.         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
  23.         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
  24.         at java.awt.Container.dispatchEventImpl(Container.java:2085)
  25.         at java.awt.Window.dispatchEventImpl(Window.java:2478)
  26.         at java.awt.Component.dispatchEvent(Component.java:4460)
  27.         at java.awt.EventQueue.dispatchEvent(EventQueue.java:599)
  28.         at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
  29.         at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
  30.         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
  31.         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
  32.         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
  33.         at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)

Ese error me tiró en fin cuando coloque esa linea que me dijistes junto con la otra de CuadroRojo me salio error :S

Oye siva te envie un mensaje para consultarte algo en particular
  #6 (permalink)  
Antiguo 13/03/2011, 13:29
 
Fecha de Ingreso: enero-2011
Ubicación: Bogota
Mensajes: 4
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: Problema/duda en java

Gracias aho si esta todo ok ;)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:30.