Ola pessoal,
estou com uma baita duvida, não sei nem por onde começar no seguinte, tenho que fazer um trabalho para a facul, e consiste em fazer um programa de regiões gráficas, é assim, tenho diversos botões em um painel, e em outro coloquei alguns com algumas cores, ai quando clico no botão da cor e depois em um do painel, este último tem que verificar se os botões ao redor dele são da mesma cor, se sim ir guardando esses botões em uma fila e ir pintando eles conforme for retirando da fila.
Minha grande duvida é a seguinte, como vou colocar um botão dentro da fila, se a fila recebe objeto?, e se conseguir colocar o botão dentro como vou tira-lo e dizer ao java para pintar ele?
sei que tenho que usar o .setBackground() e o .getBackground(), mas não sei como dar um dequeue na fila e usar este comando.
Se alguém puder me ajudar agradeço!
Eduardo
Opa,
Consegui solucionar, primeiro vi que o jButton tinha o .getLocation() que me da o X e o Y do objeto, e tem também o .getComponentAt(X, Y), que pega o componente que está nesta coordenada, porém esse .getComponentAt(X,Y) pega o component que esta dentro do conteiner, eu estava quebrando cabeça com isso, porque estava tentando pegar o jButton.getComponentAt(), o que não funcionava porque não tenho nenhum outro componente dentro do meu jButton.
Então depois de ver um post, acho que foi aqui mesmo, só não lembro qual vi que eu tinha que usar o .getComponentAt(X,Y) no jPanel que meus botões estavam.
então ao invés de ficar assim
JButton a = meuJButton;
JButton b = a.getComponentAt(a.getX(), a.getY())
Fica assim
JButton a = meuJButton;
JButton b = meuJPanel.getComponentAt(a.getX(), a.getY())
Espero ter ajudado, vou procurar o post onde vi isto e edito aqui.
Eduardo