Foro de elhacker.net

Programación => Java => Mensaje iniciado por: JOAQUINMG en 27 Diciembre 2008, 10:15 am



Título: Duda, se puede hacer?
Publicado por: JOAQUINMG en 27 Diciembre 2008, 10:15 am
Buenos dias,

Quiero hacer un programa que se pueda arrastrar una serie de componentes (JButton) sobre una serie de cuadrados dibujados (con graphics2D --> RoundRectangle2D.Double). El problema es que cuando se pintan los botones desaparecen los cuadrados aunque no esten encima. He intentado meter los JButton dentro del Paint pero pasa lo mismo. Se puede redibujar un JPanel y añadirle los JButton a la vez? Alguna otra alternativa si no se pudiera?

 Muchas gracias por anticipado


Título: Re: Duda, se puede hacer?
Publicado por: Chuidiang en 21 Enero 2009, 21:38 pm
Hola:

Haz una clase que herede JPanel y redefine el método paint(Graphics). En ese método, borra todo el panel (pintanto un rectángulo relleno que ocupe todo), luego pinta tus cuadros y finalmente llama al método paintComponents(), para que pinte los botones.

Añade los botones con el método add() normal, pero usa un layout null para el panel, de forma que puedas situar el botón con setBounds() en la posición y tamaño que quieras.

Se bueno.