Bom dia,
gostaria de saber como faço para pegar a data e horário do computador do usuário para poder usa-lo na hora de cadastrar uma consulta.
Obrigado.
Bom dia,
gostaria de saber como faço para pegar a data e horário do computador do usuário para poder usa-lo na hora de cadastrar uma consulta.
Obrigado.
você pode criar um thread,
aqui vai oq eu uso, vai resolver:
private class ThreadHora extends Thread {
public void run() {
while (true) {
try {
ThreadHora.sleep(1000);
} catch (Exception e) {
}
Calendar f = Calendar.getInstance();
String hora = f.get(java.util.Calendar.HOUR_OF_DAY) + ":" + f.get(java.util.Calendar.MINUTE) + ":" + f.get(java.util.Calendar.SECOND);
seutextfield.settext(hora);
String data = f.get(java.util.Calendar.DATE) + "/" + "12" + "/" + f.get(java.util.Calendar.YEAR);
seutextfield.settext(data);
}
}
}
depois é só instanciar e dar um start, onde você quiser
Me parece que o que o lucaslzl quer é simplesmente pegar a hora corrente, pra inserir num cadastro. Não é mostrar a hora na tela. Neste caso, basta:
Date agora = new Date();
Sim, seria mais o que o wagner disse mas, eu tento usar os métodos getHours(), getMinutes(0, getSeconds() e ele fica riscado. Como faço para manusear esses valores?
Date data = new Date();
String datacao = ""+data.getHours();
ftfHorario.setText(datacao);
Muito obrigado, eu usei o código do morcinek e funcionou melhor. Ele apenas não consegue setar o mes.
Calendar f = Calendar.getInstance();
String hora = f.get(java.util.Calendar.HOUR_OF_DAY) + ":" + f.get(java.util.Calendar.MINUTE) + ":" + f.get(java.util.Calendar.SECOND);
ftfHorario.setText(hora);
String data = f.get(java.util.Calendar.DATE) + "/" + ""+f.get(java.util.Calendar.MONTH) + "/" + f.get(java.util.Calendar.YEAR);
ftfData.setText(data);
se eu coloco assim ele buga.
O mês retorna 1 a menos (a contagem começa de 0), então vc precisa somar 1: f.get(Calendar.MONTH + 1).
Que bug você disse que tem?
A mascara não deixa porque o retorno do mês é: “7” e não “07”, pelo menos eu acho que é isso. Ou ele ultrapassa o tamanho da mascara porque faz um barulho como se estivesse tentando digitar onde os espaços já estão completos.
Esse é o código da mascara:
//textfield Data
try
{
mfData = new MaskFormatter("##/##/####");
}
catch (Exception erro)
{
JOptionPane.showMessageDialog(null, "Não conseguiu carregar a mascara");
}
ftfData = new JFormattedTextField(mfData);
E se eu tiro a mascara e coloco:
String data = f.get(java.util.Calendar.DATE) + "/" + ""+ f.get(java.util.Calendar.MONTH +1) +"/" + f.get(java.util.Calendar.YEAR);
Aparece o número “33” no lugar do mês.
Tem alguma dica para eu fazer ou no código da mascara ou no do mês para desbuggar?
Obrigado.
Consegui resolver, muito obrigado pela ajuda.