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

Animaciones Sobre un JPanel

Estas en el tema de Animaciones Sobre un JPanel en el foro de Java en Foros del Web. Tengo una aplicion en java de un juego de ajedrez y he creado el tablero de juego como un JPanel con gridLayout y metiendo JLabels ...
  #1 (permalink)  
Antiguo 14/05/2012, 17:30
Avatar de CRIXX93  
Fecha de Ingreso: abril-2012
Ubicación: Candelaria, Valle del Cauca, Colombia
Mensajes: 2
Antigüedad: 12 años, 7 meses
Puntos: 0
Pregunta Animaciones Sobre un JPanel

Tengo una aplicion en java de un juego de ajedrez y he creado el tablero de juego como un JPanel con gridLayout y metiendo JLabels para crear una matriz 8x8 con los colores y todo lo demas. El problema es que las imagenes de las piezas de ajedrez, quedan cubiertas por el tablero.

El programa estaba originalmente pensado como un canvas y funcionaba bien, pero necesitaba hacerle el cambio a JPanel. No se si el problema es que no se pueden realizar animaciones en un JPanel o hay algo que estoy ignorando....
  #2 (permalink)  
Antiguo 14/05/2012, 21:41
Avatar de zero0097  
Fecha de Ingreso: abril-2010
Ubicación: México
Mensajes: 481
Antigüedad: 14 años, 6 meses
Puntos: 69
Respuesta: Animaciones Sobre un JPanel

nada en java hace animaciones, lo que se hace es pintar y actualizar, pintar y actualizar, y ese proceso parece como si fuera una animación.....

las imágenes quedan cubiertas por que las pintas antes de pintar el escenario.... al llamara a un JPanel se ejcutará el método paint entonces crea las imágenes dentro del método paint y al final, para que se añadan cuando ya esta pintado, y así si haces un repaint el repaint no las cubrirá por que ellas se repintaran también... claro es solo una idea
__________________
De nada, hay te encargo +1...

Etiquetas: jpanel, programa, animacion
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 12:46.