Eu toh fazendo um jogo de campo minado no Net Beans 5.5.1, onde que o jogo tem quatro classes, main, telaDoJogo, LogicaDoJogo, e BotãoDoJogo…
Na classe Botão do Jogo eh criado uma botão pai…q contem a classe LogicaDoJogo.
Eu não sei co,mo fazer para que quando clicado em um botão cujo o conteudo seja nulo, o jogo desabilite todos os outros botões adjacentes cujo o conteudo for nulo…
Eu utilizaria uma matriz de booleans (ou botões, só que para ter um desempenho melhor, booleans) para fazer o mapamento dos botões (ativo/inativo).
A partir disso, desenvolva um metodo recursivo que analise os botões vizinhos de um botão e caso sejam nulos, dispara o metodo para sua logica e chama o recursivo para cada nulo…
*Visualmente falando, o método verificará as posições acima(i-1,j), abaixo(i+1,j), lado esquerdo(i,j-1), lado direito(i,j+1) … Lembrando que voce deverá criar antes de cada verificação pois poderá ocorrer erro na hora de apontar para uma posição inexistente da matriz. A lógica é… se eu tiver o vizinho, verifico. Você sabe que o botão tem vizinho a partir do tamanho da matriz.
Deve ter uma solução com desempenho melhor…
Mas se nao a encontrar, utiliza essa