E ai pessoal, tudo mundo tranquilo!?
Então, estou com um problema no meu código. Estou montando um programa que desligue o computador no horário agendado, ele está funcionando certinho, porém não consigo cancelar o agendamento, depois que fiz um agendamento ou eu espero ele desligar ou mato o processo no gerenciador de processos.
Eu preciso de um maneira que quando eu clique no botao Cancelar ele pare de rodar, mas o problema é que o agendamento ele está num laço, e o botao cancelar fica inativo para clique, não sei o que eu faço, estou postando o trecho que realiza o desligamento do computador após o agendamento.
public void desligarPc(String data, String horario)
{
while (!hr.getText().equals(data + " - " + horario)){
try {
Thread.sleep(1000);
this.hr.revalidate();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
try {
Runtime.getRuntime().exec("rundll32.exe user.exe,ExitWindows");
Runtime.getRuntime().exec("shutdown -s -t 10");
} catch (IOException e) {
e.printStackTrace();
}
}
O while deixa meu programa parado, fazendo com que eu não consiga usar outro botão, não sei se tem alguem meio para eu poder cancelar o agendamento que eu fiz.
Desde já agradeço!