Problemas com overflow ao programar balde para um Paint

1 resposta
java
C

Olá. estou tentando fzer um Balde para o meu paint. basicamente clico em pixel, na JFrame, e ele pinta dos a volta de mesma cor. para isto criei um recursao. Deu muito certo para pintar os Pixels à direita, mas quando estendi para todos deu erro de overflow. por favor me ajudem a arrumar isto.

package balde;

public class Balde {

int x, y;
int rgb;
int color;

Balde(int x1, int y1) {
	 x = x1;
	 y = y1;
	 color = 255;
	 rgb = Tela.tela.getRGB(x1, y1);
	 Tela.tela.setRGB(x, y, color);
	 pintar(x, y);
	 
}

public void pintar(int x, int y) {
		
		for (int i = -1; i <= 1; i++) {
			for (int u = -1; u <= 1; u++) {
				try {
					if (Tela.tela.getRGB(x+i, y+u) == rgb) {
						Tela.tela.setRGB(x+i, y+u, color);
						pintar(x+i,y+u);
					}
					
				}catch(Exception e){
				}
			}
		}
	
}

}

image

1 Resposta

darlan_machado

2 coisas:
1 - Evite isso, sempre trate as exceções, registre log delas e use-as a seu favor:

2 - Qual é a linha 24

Criado 2 de abril de 2018
Ultima resposta 3 de abr. de 2018
Respostas 1
Participantes 2