| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 00:24:41
|
tiagosarno
Debugger
![[Avatar]](/images/avatar/c8f7e8cf42a81f4b87c8a82b4c454ed1.jpg)
Membro desde: 17/02/2007 10:07:03
Mensagens: 66
Localização: Goiânia
Offline
|
Pessoal,
sou bem iniciante na linguagem ainda e gostaria como posso fazer para criar um método que mostra a hora do sistema dinâmicamente como em java-script onde os segundos vão passando: tipo 22:45:36
Alguém tem este método ou sabe como fazer? Desde já agradeço ...
Tiago [ HcK ]
|
Tiago Rocha Sarno - Programador
http://tiagosarno.wordpress.com |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 05:21:01
|
SrFabio
JavaBaby
![[Avatar]](/images/avatar/85cb5e95e7360a8b7dfdf0de29d556d8.png)
Membro desde: 18/02/2007 13:50:41
Mensagens: 99
Localização: São Miguel, Açores (Portugal)
Offline
|
Podes fazer isso instanciando um objecto da classe java.util.Date;
Exemplo:
Ele irá mostrar a data no momento da instanciação;
Se quiseres dinamismo terás de usar Threads, ou crias um ciclo infinito em que em cada iteração ele mostra a data.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 07:23:14
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Isso mesmo. Primeiro você instancia um Date:
Depois, gere a String formatada para esse date. Há duas maneiras de se fazer isso. A primeira é usando um DateFormat. A segunda é usando o método String.format() ou equivalente. Vou mostrar aqui com o DateFormat:
Finalmente, imprima essa data formatada continuamente numa nova thread. No run() de sua thread, faça:
DateFormat formato = new SimpleDateFormat("HH:mm:ss.SSS");
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 08:33:53
|
tiagosarno
Debugger
![[Avatar]](/images/avatar/c8f7e8cf42a81f4b87c8a82b4c454ed1.jpg)
Membro desde: 17/02/2007 10:07:03
Mensagens: 66
Localização: Goiânia
Offline
|
Vini entendi o que deve ser feito,
sei o que são threads mas somente o que aprendi em S.O teórico sabe, não tenho a mínima idéia de como criar uma thread no JAVA. Estou utilizando a IDE NetBeans 5.0, ou esta thread é apenas um arquivo java class comum?
|
Tiago Rocha Sarno - Programador
http://tiagosarno.wordpress.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 08:48:40
|
tiagosarno
Debugger
![[Avatar]](/images/avatar/c8f7e8cf42a81f4b87c8a82b4c454ed1.jpg)
Membro desde: 17/02/2007 10:07:03
Mensagens: 66
Localização: Goiânia
Offline
|
Tentei colocar o código no mais de meu sistema, segue o código:
|
Tiago Rocha Sarno - Programador
http://tiagosarno.wordpress.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 09:02:24
|
nilsoncastro
Thread.start()
Membro desde: 19/02/2007 10:46:25
Mensagens: 42
Offline
|
eu consigui formatar a data pegando apenas o horário, através de sua substring na posição de 12 a 18, quanto às threads, também gostaria de conhecer como se implementa isso em Java. Existe algum componente como o reloginho no delphi onde se colocava processos rodando sem travar o programa?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 09:02:48
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Beleza, acho que é isso mesmo.
Só que não seria melhor criar o sistema e dar o setVisible fora do while? Depois a Thread poderia cuidar apenas da atualização do label.
Finalmente, coloque também o sleep() que eu havia esquecido de manhã. Meu código já está atualizado ali em cima!
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 09:04:11
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Nilson,
Existe sim, mas não é um componente. É uma classe. Na verdade existem duas.
Dê uma pesquisada nas classes java.util.Timer e java.swing.Timer. Normalmente eu uso a primeira, ou gerencio através de Threads mesmo.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 09:15:13
|
correainfo
JavaGuru
![[Avatar]](/images/avatar/1b84c4cee2b8b3d823b30e2d604b1878.jpg)
Membro desde: 16/04/2005 21:04:25
Mensagens: 240
Localização: São Paulo SP - Cidade Natal : Auriflama,SP
Offline
|
tiagosarno nem precisa colocar numa thread coloca um while dentro de um metodo da uma olhada no exemplo abaixo espero ter ajudado.
Qualquer duvida post ae...
|
11-75333451
Desenvolvedor Java e IPhone
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 11:40:15
|
tiagosarno
Debugger
![[Avatar]](/images/avatar/c8f7e8cf42a81f4b87c8a82b4c454ed1.jpg)
Membro desde: 17/02/2007 10:07:03
Mensagens: 66
Localização: Goiânia
Offline
|
Vini desculpa ai cara mais ainda consegui, acho que o código agora esta certo mas esta dando um erro que desconheço, o erro é:
non-static variable LabelHora cannot be referenced from a static context. Na linha ' LabelHora.setText(formattedDate); '
Eis o código, a linha que esta dando erro esta marcada com " <-- ":
Acho que tem alguma coisa a ver com váriavel global mas como sou novo na linguagem não sei bem o que é este erro. Help please ...
|
Tiago Rocha Sarno - Programador
http://tiagosarno.wordpress.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 11:55:48
|
shison
JavaBaby
![[Avatar]](/images/avatar/3458a90e2c8e0d2ddb87e1c47cc32eea.jpg)
Membro desde: 28/12/2006 01:08:46
Mensagens: 82
Offline
|
Olá, este problema é por você estar trabalhando com uma declaração não estática (LabelHora) dentro de um método estático (Main).
No caso o seu Label deve estar declarado como componente no escopo da classe do seu "formulário".
Daí você pode fazer duas coisas:
- Instanciar todo seu formulário e tudo mais dentro do seu método Main e trabalhar lá sem problemas (muita confusão).
ou
- De seu método Main, instanciar a classe que implementa o formulário e então a partir desta (do form), trabalhar com os componentes.
|
----
Hudson Pena Magalhães |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 12:31:41
|
mariano
What is classpath?
Membro desde: 26/01/2007 13:40:20
Mensagens: 8
Offline
|
Seguinte: O Net Beans 5.0 não vem com um jar que vem apenas no 3.6 que é o Timer.jar e deve ser adicionado na sua biblioteca do Net Beans...
Este é o único porém que vi... e consigo rodar relógios...
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/02/2007 19:43:36
|
tiagosarno
Debugger
![[Avatar]](/images/avatar/c8f7e8cf42a81f4b87c8a82b4c454ed1.jpg)
Membro desde: 17/02/2007 10:07:03
Mensagens: 66
Localização: Goiânia
Offline
|
De seu método Main, instanciar a classe que implementa o formulário e então a partir desta (do form), trabalhar com os componentes
Pessoal será que alguém pode me mostrar como instanciar este formulário em meu código, já tentei de tudo quanto é jeito e fica sempre dando este erro, o código é o seguinte:
Tiago.
|
Tiago Rocha Sarno - Programador
http://tiagosarno.wordpress.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/02/2007 07:11:29
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
A label não é um componente da classe de interface sistema?
Então você teria que alterar a criação para:
sistema s = new sistema();
s.setVisible(true);
Depois, na linha que dá erro, você deve fazer:
E. do contrário que disse o colega, precisa sim de outra thread para executar o código, caso contrário sua interface gráfica ficará travada.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/02/2007 07:29:50
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20580
Localização: Curitiba/PR
Offline
|
Segue abaixo um exemplo que realmente funciona:
|
|
|
 |
|
|