Menu sliding

Boa tarde pessoal, estou fazendo um protótipo final de de um programa e o mesmo contem um menu sliding. que corre da esquerda para a direita…
O mesmo é acionado por um botão. Queria que ao clicar no botão para o menu aparecer o ícone do botão mudasse (até aqui eu consegui fazer), e quando clicar de novo pra ocultar o menu o botão voltasse ao ícone anterior.

Vou postar a parte do código do menu e do botão e enviar um print da tela do programa.

private void btn_menuActionPerformed(java.awt.event.ActionEvent evt) {                                         
    // Ativação e animação do menu
    int posicao = this.pnlMenu.getX();
    if(posicao > -1) {
        Animacion.Animacion.mover_izquierda(0, -188, 2, 2, pnlMenu);
    }else {
        Animacion.Animacion.mover_derecha(-188, 0, 2, 2, pnlMenu);
    }
}                                        

private void btn_menuMouseClicked(java.awt.event.MouseEvent evt) {                                      
    // Troca do ícone ai clicar no botão
    ii = new ImageIcon(getClass().getResource("/imagens/btn_menu_open.png"));
    btn_menu.setIcon(ii);
}