Como utilizo o JButton de outro Jframe?

Olá a todos, estou desenvolvendo um sistema pra Restaurante e não consigo o seguinte:
Criei a mapa das mesas, cada mesa é um button, ao clickar vira vermelho e o jframe Mesa, mas ao finañizar venda não consigo mudar a cor do button que está na mapa atravez do jframe mesa. Alguem pode ajudar?

Descreva melhor seu problema, pois está confuso.
Quais as classes que você tem e como elas se relacionam?

vc pode criar um array de objetos do tipo JButton, e com isso colocar um evento ao botao ser clicado para mudar de cor ou qualquer outra coisa que vc queira

No JFrame de fechar conta você deve ter a referencia do outro JFRame ou do botão da mesa.
Quando clicar no fechar venda, passe o botão como referencia.

Criei um JFrame FrmVenda aonde tem o buttom btnmesas. Ao clickar , ele muda de cor e abre o Jframe FrmMesa . Quando fecho o FrmMesa chamo o button btnmesas do FrmVenda setando o background pra mudar de cor mas nada acontece.

Dentro do JFRAME MESA chamo o btn do FrmVenda

FrmVenda v = new FrmVenda();
V.btnmesas.setback(color.green);

Criei um JFrame FrmVenda aonde tem o buttom btnmesas. Ao clickar , ele muda de cor e abre o Jframe FrmMesa . Quando fecho o FrmMesa chamo o button btnmesas do FrmVenda setando o background pra mudar de cor mas nada acontece.

Dentro do JFRAME MESA chamo o btn do FrmVenda

FrmVenda v = new FrmVenda();
V.btnmesas.setback(color.green);

O problema é que você está instanciando um novo FRMVenda, e não usando a referencia do FrmVenda já aberto, por isso eu disse, passe a referencia do FrmVenda quando chama o frame de fechar conta.

Tem como me mostrar porfavor? Não to entendendo

Esse é o Button do JFRAME FRMVENDA

btnMesa1 = new JButton("");
btnMesa1.setBackground(Color.GREEN);
btnMesa1.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
btnMesa1.setEnabled(false);
btnMesa1.setBackground(Color.RED);
FrmMesa1 m1 = new FrmMesa1(id, nome);
m1.setVisible(true);

		}
	});

AQUI é o button do JFRAME FRMMESA1.
NOTA(Se eu nao creo uma nova instancia do FRMVENDA não da pra chamar o btnMesa1)
ME AJUDA POR FAVOR

btnFinaliza.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent arg0) {
btnDin.setEnabled(true);
btnNovaComanda.setEnabled(false);
venda v = new venda();
v.setTotal_venda(totalMesa);
v.inserirTotale();

			 FrmVenda venda = new FrmVenda(0, "");
			 venda.btnMesa1.setBackground(Color.GREEN);
	
			 
			 
			 System.out.println("Totale atualizado!");
			  
			 cupon.append("  -------------------------------------------------\n\r"+
				 		"  TOTAL   R$  "+txtTotal.getText()+"                \n\r"+				        
				 		"  --------------------------------------------------\n\r"+
				       
				        "\n\r"+
				        "\n\r"
				        );
			 
			 	
			txtDinheiro.requestFocus();
			txtDinheiro.setBackground(Color.YELLOW); 	
		}
	});

Agora fica mais facil.
Tente usar
btnMesa1.setOpaque(true)

Antes de setar a cor

Não deu certo

Espera ai, você está instanciando novamente o FrmVenda quando você vai fechar a venda ?

v.inserirTotale();
FrmVenda venda = new FrmVenda(0, ""); //está instanciando novamente ?
venda.btnMesa1.setBackground(Color.GREEN);

Você deve usar a referencia do FrmVenda que chamou a tela de fechamento da mesa.
Ou você trata um retorno no método que chama o FrmMesa (setVisible) ou você passa o botão como referencia:

FrmMesa1 m1 = new FrmMesa1(id, nome, btnMesa1);

E em vez de
FrmVenda venda = new FrmVenda(0, "");
venda.btnMesa1.setBackground(Color.GREEN);

você faz:
btnMesa1_PASSADO_POR_REFERENCIA.setBackground(Color.GREEN);

Vou passar o Button para a mesa. Vou dar notiçia

Obrigado Cara, serio… deu certo. Tava in dificuldade.

Sem problema