Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Recommended Posts

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;

Compartilhar este post


Link para o post
Compartilhar em outros sites

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)

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";
	 }
}

Não sou expert, mas acho q o caminho é por ai.

 

 

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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";

Fiz um codigo aqui um pouco diferente do seu da uma olhada ai:

 

_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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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.

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

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

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.