Ver Mensaje Individual
  #6 (permalink)  
Antiguo 06/05/2017, 15:06
Avatar de chuidiang
chuidiang
Colaborador
 
Fecha de Ingreso: octubre-2004
Mensajes: 3.774
Antigüedad: 19 años, 6 meses
Puntos: 454
Respuesta: Volver a repintar el area

Hola:

En el método paint() estás haciendo un "new figura()", es decir, estas creando un nuevo objeto figura al que nunca has llamado a sus métodos AddFigure(), así que paint() no pintera ninguna figura simplemente porque el objeto figura que tiene, recién creado, no tiene datos dentro.

En tu formulario haces un "new figure()" (OTRO objeto figura distinto del anerior) al que llamas una vez a AddFigura. No pones el resto del código, pero si cada vez que en el formulario introduces los datos de una figura haces un new figura(), pierdes todo lo anterior. Y ademas no es el mismo objeto figura que el del paint() donde creas otro mas y encima vacio.

Solo tienes que hacer un new de figura en un sitio y pasárselo a todas las demas clases. En el main podrias poner algo asi

Código:
... main ... {
   figure figura = new figure()
   formulario form = new formulario( figure );
   pintar pintar = new pintar( figure )
}
pintar y figure deben guardarse el objeto figure que reciben en el constructor en algún atributo de la clase y usar ese atributo para AddFigure() y para paint(), sin ahcer más new de figura.

Saludos.
__________________
Apuntes Java
Wiki de Programación