Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá pessoal
Gostaria de colocar saudações que mudem de acordo com a hora do dia (Bom Dia, Boa Tarde e Boa Noite).
Tenho este código, onde o relógio funciona bem, mas a saudação não muda.
Desde já obrigado pela atenção de todos.
CODE
Hora = dataHora.getHours();
if (Hora1>=0 && Hora1<=12) {
saudacao = "Bom Dia";
}
if (Hora1>=12 && Hora1<=18) {
saudacao = "Boa Tarde";
}
if (Hora1>=18 && Hora1<=23) {
saudacao = "Boa Noite";
}
xDia = dataHora.getDay();
horatoda = new Date();
semana = new Array(6);
semana[0] = "Domingo";
semana[1] = "Segunda-Feira";
semana[2] = "Terça-Feira";
semana[3] = "Quarta-Feira";
semana[4] = "Quinta-Feira";
semana[5] = "Sexta-Feira.";
semana[6] = "Sábado";
semanas = semana[horatoda.getDay()];
mes = new Array(11);
mes[0] = "Janeiro";
mes[1] = "Fevereiro";
mes[2] = "Março";
mes[3] = "Abril";
mes[4] = "Maio";
mes[5] = "Junho";
mes[6] = "Julho";
mes[7] = "Agosto";
mes[8] = "Setembro";
mes[9] = "Outubro";
mes[10] = "Novembro";
mes[11] = "Dezembro";
mesa = mes[horatoda.getMonth()];
ano = horatoda.getFullYear();
mes = horatoda.getMonth();
dia = horatoda.getDate();
segundo = horatoda.getSeconds();
segundos = (segundo*6);
setProperty("_root.segundo", _rotation, segundos);
minuto = horatoda.getMinutes();
minutos = (minuto*6);
setProperty("_root.minutos", _rotation, minutos);
hora = horatoda.getHours();
horas = (hora*30)+(minutos/12);
setProperty("_root.hora", _rotation, horas);
// Actions Digital
hora1 = horatoda.getHours();
hora1 = hora1;
minuto1 = horatoda.getMinutes();
segundos1 = horatoda.getSeconds();
if (minuto1<10) {
minuto1 = "0"+minuto1;
}
if (segundos1<10) {
segundos1 = "0"+segundos1;
}
if (hora1<12) {
pm = "AM";
} else {
pm = "PM";
}
digital = hora1+":"+minuto1;
calendar = semanas+" "+dia+" de "+mesa;Obrigado pela resposta Bruno.
Coloquei o SetInterval, como você mostrou no exemplo, mas a saudação simplesmente sumiu. O que será que aconteceu?
tenta assim:
mudaSaudacao = function() {
Hora = dataHora.getHours();
if (Hora1>=0 && Hora1<=12) {
saudacao = "Bom Dia";
}
if (Hora1>=12 && Hora1<=18) {
saudacao = "Boa Tarde";
}
if (Hora1>=18 && Hora1<=23) {
saudacao = "Boa Noite";
}
return saudacao;
}
eai faz a var hora1 receber o retorno dessa função
hora1 = mudaSaudacao();
Continuo nos chutes... pode ser que funcione... :)
abraços
E aí Bruno beleza??
Funcionou com alguns ajustes...rsrs. Estava faltando um o parâmetro "else".
hora1 = mudaSaudacao();
mudaSaudacao = function () {
Hora = dataHora.getHours();
if (Hora1>=0 && Hora1<=12) {
Saudacao = "Bom Dia";
} [b]else[/b] if (Hora1>=12 && Hora1<=18) {
Saudacao = "Boa Tarde";
} [b]else[/b] if (Hora1>=18 && Hora1<=23) {
Saudacao = "Boa Noite";
}
return saudacao;
};Valew mesmo cara, precisando estamos aí
Flw
rapaz, sabe que eu olhei pra função, percebi q esta estranha, só q não me liguei de corrigir.
Q bom que funcionou... precisando de mais coisas tamos ai também.
abraço
Podia ser utilizado o onEnterFrame tb, mas foi boa a resolução com o setInterval pois o mesmo é um metodo melhor que o onEnterFrame.
abs
Bruno, Kisuke...parece que falei cedo demais...rsrs. Mudou para Bom Dia, mas após as 12:00hrs nã0 mudou para Boa Tarde
Se puderem me dar uma mãozinha...
>
Bruno, Kisuke...parece que falei cedo demais...rsrs. Mudou para Bom Dia, mas após as 12:00hrs nã0 mudou para Boa Tarde
Se puderem me dar uma mãozinha...
olá man seus if´s estão errados ta assim oh:
if (Hora1>=0 && Hora1<=12) { //Menor igual a 12 beleza ai saudacao recebe bom dia
Saudacao = "Bom Dia";
} [b]else[/b] if (Hora1>=12 && Hora1<=18) { // aqui >=12 o if de cima tem igual a 12 ai nao vira boa tarde
Saudacao = "Boa Tarde";
} [b]else[/b] if (Hora1>=18 && Hora1<=23) {
Saudacao = "Boa Noite";_root.onEnterFrame = function(){
var valores:Date = new Date();
ano=valores.getFullYear();
mes = valores.getMonth();
dia = valores.getDay();
data_formatada=dia + "/"+mes+"/"+ano;
campo1.text=data_formatada;
hora = valores.getHours();
minuto = valores.getMinutes();
segundos = valores.getSeconds();
if(hora<10){
hora="0"+hora;
}
if(minuto<10){
minuto="0"+minuto;
}
if(segundos<10){
segundos="0"+segundos;
}
hora_formatada = hora+":"+minuto +":"+segundos;
campo2.text=hora_formatada;
if(hora>=0 && hora<=12){
saudacao.text="Bom dia ^_^";
}
if(hora>12 && hora<=18){
saudacao.text="Boa Tarde ^_^";
}
if(hora>18 && hora<=23){
saudacao.text="Boa Noite ^_^";
}
}
Testado e 100%, lembrando que campo1, campo2 e saudacao são dinamic´s text no palco.
abs
Valew Kisuke, está funcionando...vamos ver quando passar do meio dia...hehe.
Mais uma vez obrigado
abçs
>
Valew Kisuke, está funcionando...vamos ver quando passar do meio dia...hehe.
Mais uma vez obrigado
abçs
Mude a hora d oseu relogio, ai você vera.
xD
abs
Parece que está funcionando, porém tive que fazer alguns ajustes.
Em vez de colocar 12:00 hrs para mudar a saudação para Boa Tarde, coloquei 11:00 hrs, pq parece que o flash considera até 12:59 hrs como 12:00 hrs e a saudação só estava mudando a partir das 13:00 hrs, fiz essa mudança hoje e quando for exatamente meio dia vou verificar a saudação.
>
Parece que está funcionando, porém tive que fazer alguns ajustes.
Em vez de colocar 12:00 hrs para mudar a saudação para Boa Tarde, coloquei 11:00 hrs, pq parece que o flash considera até 12:59 hrs como 12:00 hrs e a saudação só estava mudando a partir das 13:00 hrs, fiz essa mudança hoje e quando for exatamente meio dia vou verificar a saudação.
Se voce queiser que a saudação seja precisa até nos minutos e segundos voce deve implementar mas intruções nesse codigo.
Está precisa. Acompanhei os últimos dois minutos, e exatamente quando mudou para 12:00 hrs, a saudação mudou para Boa Tarde.
Está precisa. Acompanhei os últimos dois minutos, e exatamente quando mudou para 12:00 hrs, a saudação mudou para Boa Tarde.
Que bom que resolveu o problema, agora voce ta usando o meu algoritmo ou o seu? porque o meu eu ja tinha testado e tava ok.
abs
Fiz uma adaptação usando parte de um e parte de outro. Do meu código mantive o calendário onde mostra o dia da semana e o mês por extenso, e do seu código usei o relógio digital e a saudação.
Obrigado mais uma vez Kisuke, e precisando estamos aí!!!
Vlw
oi Eduardo, tudo bem?
Cara, a princípio você precisaria colocar um setInterval pra 'reler' a saudação a cada X tempo.
Tipo algo assim:
intervalo = setInterval("mudaSaudacao", 1000)
Não sou expert, mas acho q o caminho é por ai.Abraços