Como eu faço para criar um único JButton para ter dois estados?

Como eu faço para criar um único JButton para ter dois estados? Por exemplo: Abrir e fechar, isto é, quando o botão é ABRIR ele executa uma ação
e quando é FECHAR ele executa outra ação diferente. Inicialmente ele deve ser INICIAR, quando o usuário clicar ele automáticamente vira FECHAR e vice versa. Alguém pode me ajudar? Obrigado.

cara é so uma ideia…

trabalha com variaveis para verificar o estado do botão.

Como eu posso fazer isso?

Tenta assim:

Você começa com o botão abrir e depois que clicar no botão seta o mesmo.

btBotao.setActionCommand("Fechar");

Agora usa a sua lógica para fazer isso.

Ve se ajuda.

Adiciona uma variavel boleana pra controlar isso tipo

na tua classe la

aih no final da tua acao do actionPerformed() vc poe um if la:

aih a logica pra inverter o boolean obviamente vc poe antes dessa linha

nao funcionou…

public void acionaBotaoIniciar() {
tela.jButton2.addActionListener(new ActionListener() {

		public boolean estadobotao=true;
		public void actionPerformed(ActionEvent e) {
			
			if(estadobotao=true){
			\\Ação 1 - Iniciar
			tela.jButton2.setText("Desativar");
			
			}
			
			if(estadobotao=false){
		                \\Ação 2 - desativar				
                                                            tela.jButton2.setText("Iniciar");	
			estadobotao=true;	
			}
			
		}
                                            estadobotao=false;
	});
}