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

Pintar con swing, no me sale

Estas en el tema de Pintar con swing, no me sale en el foro de Java en Foros del Web. Buenas, me han mandado para la universidad hacer un mastermind. Es la primera vez que nos metemos con entornos graficos y hay algo que me ...
  #1 (permalink)  
Antiguo 03/12/2010, 09:48
 
Fecha de Ingreso: diciembre-2010
Mensajes: 1
Antigüedad: 14 años
Puntos: 0
Pintar con swing, no me sale

Buenas, me han mandado para la universidad hacer un mastermind. Es la primera vez que nos metemos con entornos graficos y hay algo que me está sacando de quicio.

Tengo un JFrame que dentro tiene un JPanel y un JMenuBar(aunque el menu no es relevante).

El JPanel tiene, ahora mismo dos Fichas (ficha1(verde, 1, 1) y ficha2(negro, 50, 50) los numeros son las coordenadas.

Pues bien, no se muy bien lo que estoy haciendo porque me he visto tantas cosas que ya no sé ni lo que hago, asi que os pongo las opciones que hice:

Si instancio dos fichas distintas y las añado dentro de un JPanel y éste dentro de un JFrame, me hace algo raro, es como si dibujara un circulo en la posicion que le sale de las.. narices... y encima sale como si lo cortara el circulo por una esquinita.

La otra opcion es que instancié las dos fichas e hice un this.getContentPane().add(ficha1);
this.getContentPane().add(ficha2);

pero esta ultima opcion solo me pinta la ficha2 y machaca la otra :(

alguna idea?
  #2 (permalink)  
Antiguo 03/12/2010, 14:58
 
Fecha de Ingreso: junio-2010
Mensajes: 59
Antigüedad: 14 años, 6 meses
Puntos: 5
Respuesta: Pintar con swing, no me sale

pero no dices como pintas las fichas, con Canvas? o directamente sobre el panel?
Deberias hacer una clase Pintado que herede de JPanel, y que pinte todas la fichas, sobreescribiendo su método paint, y mejor si haces doble buufer para que no parpadee, luego esa clase lo instancias en el JFrame y se lo adicionas, y listo

Etiquetas: pintar, sale, swing
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 23:47.