Es decir, la goma de borrar (que le he puesto color blanco obviamente) borra el fondo del panel pero no borra lo que escribo en el panel. Sin embargo las lineas si que se montan unas encima de otras y he probado con circulos y montan los circulos a las lineas y viceversa.
Añadir que si le pongo cualquier otro color a la goma de borrar usandolo como "brocha" si que se montan unos colores con otros, pero no se montan con los de las esferas o con las lineas.
Voy a dejar TODO el codigo para que podais copiar y pegar todo el proyecto y asi probarlo. La clase donde tengo el problema es en PanelPaint asi que sera esa donde tendremos que centrarnos me temo.
La clase main:
Código Java:
Ver original
package paintrodrigo; import java.awt.BorderLayout; import javax.swing.JFrame; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.SwingUtilities; public class GUI { static CrearYsituarSlider brillo = new CrearYsituarSlider(brillar,longitud); static CrearYsituarSlider tamaño = new CrearYsituarSlider(disminuir,longitud2); private static void createAndShowGUI() { f.pack(); f.setVisible(true); } @Override public void run() { createAndShowGUI(); } }); } }
La clase BotonesHerramientas:
Código Java:
Ver original
package paintrodrigo; import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.ImageIcon; import javax.swing.JButton; import javax.swing.JLabel; import javax.swing.JPanel; import javax.swing.JSlider; JSlider slider; JLabel label; public BotonesHerramientas() { crearYsituarBotonesHerramientas(); } private void crearYsituarBotonesHerramientas() { String[] imagen = {"goma.jpg", "16_em_pencil.png", "stock_draw_line.png", "Curva.png", "stock_draw_rounded_rectangle.png", "stock_draw_ellipse.png"}; for (int i = 0; i < nombre.length; i++) { boton.setName(nombre[i]); boton.setText(nombre[i]); boton.setIcon(icon); boton.addActionListener(this); this.add(boton); } } @Override if (boton.getText().equals("Borrador")){ PanelPaint.borrador = true; PanelPaint.linea=false; PanelPaint.circulo = false; PanelPaint.cuadrado = false; } if (boton.getText().equals("Linea")){ PanelPaint.borrador=false; PanelPaint.linea=true; PanelPaint.circulo = false; PanelPaint.cuadrado = false; //panelPaint.arco = false; } } }
Y la clase BotonesColores:
Código Java:
Ver original
import java.awt.Color; import java.awt.GridLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import javax.swing.JButton; import javax.swing.JPanel; public BotonesColores(){ situarBotonesColores(); } private void situarBotonesColores() { //Object[] colors_name = {Color.BLACK", "Color.BLUE","Color.CYAN", "Color.DARK_GRAY", "Color.GRAY", "Color.GREEN", "Color.LIGHT_GRAY", "Color.MAGENTA", "Color.ORANGE", "Color.PINK", "Color.RED", "Color.WHITE", "Color.YELLOW"}; for(int i=0; i<colors.length ;i++){ botnColor.setBackground(colors[i]); //botnColor.setName(colors_name[i]); botnColor.addActionListener(this); botnColor.setText(" "); this.add(botnColor); } } @Override PanelPaint.colorFigura = boton.getBackground(); } }
No se si alguien podra ayudarme. Recordad que tendreis que quitar la url de las imagenes de la clase BotonesHerramientas, sino, os saltara un error al compilar. Muchisimas gracias a aquel que me ayude o aquellos, y seguiré intentandolo por mi cuenta. Si logro encontrar la solucion la pondre.
Un saludo!!