Foro de elhacker.net

Programación => Java => Mensaje iniciado por: Lostiland en 10 Junio 2015, 09:48 am



Título: Dibujar en un scrollpane
Publicado por: Lostiland en 10 Junio 2015, 09:48 am
Hola a todos.

Estoy teniendo un probema con programa en Java que no sé como solucionarlo...

Tengo un JPanel dentro de un scrollpane. En el JPanel aparece un dibujo de un cuadrado cuando en el lugar dónde hago click... El problema es que, cuando hago scroll en el panel, el dibujo me desaparece...

He leído por ahí que hay que sobrescribir el método paintComponent, pero el problema es que no sé dónde van a ir los dibujos, y no creo que sea muy viable recorrer toda una lista mirando la posición de todos los elementos, ya que puede haber muchos.

¿Alguien sabe cómo hacerlo?

Muchas gracias.


Título: Re: Dibujar en un scrollpane
Publicado por: Usuario Invitado en 10 Junio 2015, 16:42 pm
Si has modularizado lo suficiente no deberías tener problemas.

Cada vez que bajas el scroll, se "repinta" el JPanel. Es por ésto, que debes de sobreescribir el método paintComponents y llamar al método que pinta el cuadro.

Código
  1. private void pintarCuadro() {
  2.    /* creas el cuadro y lo pintas en el JPane */
  3. }
  4.  
  5. public void paintComponent(Graphics g) {
  6.   pintarCuadro();
  7. }


Saludos.