Compte à rebour en Flash

Compte à rebour en Flash - Flash/ActionScript - Programmation

Marsh Posté le 04-03-2008 à 14:17:52    

Bonjour,
 
J'ai un petit code en actionscript qui m'affiche un compte à rebours pour mon site.
Le soucis c'est que je doit intégrer ce code dans une bannière au format Flash 8.
Le code n'a pas l'air de marcher avec ce format il ne marche qu'avec le 6 apparement.
 
Voici mon code :

Code :
  1. // definition de la date de fin, il suffit de changer les valeurs pour donner cette date
  2. annee_fin = 2008;
  3. heure_fin = 5;
  4. minute_fin = 30;
  5. jour_fin = 16;
  6. seconde_fin = 0;
  7. mois_fin = 02;
  8. ladate_fin = new Date(annee_fin,mois_fin ,jour_fin ,heure_fin,minute_fin ,seconde_fin);
  9. //definition de la date en cours
  10. annee = ladate.getFullYear();
  11. heure = ladate.getHours();
  12. minute = ladate.getMinutes();
  13. jour = ladate.getDate();
  14. seconde = ladate.getSeconds();
  15. mois = ladate.getMonth();
  16. ladate = new Date();
  17. //definition du compte à rebourd
  18. fin = new Date (annee_fin-annee,mois_fin-mois ,jour_fin-jour ,heure_fin-heure,minutes_fin-minute ,seconde_fin-seconde);
  19. // affichage des infos
  20. affichage ="J-" + fin.getDate() +" "+ fin.getHours() +"H " + fin.getMinutes() +"M " +  fin.getSeconds() + "S ";


 
Si vous pouvez me dire où cela coince car moi je vois pas.
Sous Flash 8 il marque : J-NaN NaNH NaNM NaNS
 :pfff:


---------------
>>>Go-F1.com Formule 1<<<
Reply

Marsh Posté le 04-03-2008 à 14:17:52   

Reply

Marsh Posté le 04-03-2008 à 19:52:44    

- ça ira beaucoup mieux si tu définis l'objet <ladate> AVANT d'en appeler les méthodes ^^
- pour soustraire deux Date, on effectue la soustraction sur des timestamp (des entiers), on créé un timestamp comme ça :
 

Code :
  1. var timestamp:Number = fooDate.getTime();


 
nb : le fait d'utiliser des timestamps pour soustraire deux dates est universel à tous les langages de programmation.

Reply

Marsh Posté le 06-03-2008 à 15:48:54    

Oui j'ai modifié et mis l'object ladate avant.
Maintenant ma question est juste : Pourquoi ce code marche avec Flash 6 et pas avec Flash 8 ? Ya un truc à modifier ?
 
Parce que tu me donne une autre méthode certe mais ca répond pas à ma question : Pourquoi ce code marche avec Flash 6 et pas avec Flash 8 ?
 
(Je précise j'aime pas coder ^^)


---------------
>>>Go-F1.com Formule 1<<<
Reply

Marsh Posté le 06-03-2008 à 19:54:04    

Ton code ne fonctionne pas non plus avec flash 6.


---------------
(vivement qu'AS3 se généralise et que je n'ai plus à répondre à ce genre de questions, faute de gens pour les poser)
Reply

Marsh Posté le 30-03-2009 à 00:49:29    

Bonsoir,  
je bosse sous flash CS3 moi.
 
J’aimerais savoir comment coder ce compte à rebours pour avoir le nombre de mois en jours.
 
Car là mon compte à rebours fait 1m12jrs par exemple et je voudrais le tout en jours du genre 42 jours.
 
Comment faire  
 
voila mon codage .
 
// definition de la date de fin, il suffit de changer les valeurs pour donner cette date
annee_fin = 2009;
heure_fin = 22;
minute_fin = 00;
jour_fin = 14;
seconde_fin = 00;
mois_fin = 5;
ladate_fin = new Date(annee_fin, mois_fin, jour_fin, heure_fin, minute_fin, seconde_fin);
 
//definition de la date en cours
annee = ladate.getFullYear();
heure = ladate.getHours();
minute = ladate.getMinutes();
jour = ladate.getDate();
seconde = ladate.getSeconds();
mois = ladate.getMonth(jours)+1;
ladate = new Date();
 
//definition du compte à rebourd
fin = new Date(annee_fin-annee, mois_fin-mois, jour_fin-jour, heure_fin-heure, minutes_fin-minute, seconde_fin-seconde);
 
// affichage des infos
timer = "Nous sommes le "+jour+"/"+mois+"/"+annee+"  . Il est "+heure+" heures "+minute+" minutes "+seconde+" secondes";
timer_fin = "L'échéance prend fin le "+jour_fin+"/"+mois_fin+"/"+annee_fin+"  , à "+heure_fin+" heures "+minute_fin+"0 minutes "+seconde_fin+"0 secondes";
affichage_fin = fin.getMonth()+"m"+fin.getDate()+"j "+fin.getHours()+"h "+fin.getMinutes()+"m "+fin.getSeconds();

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed