Décimales / conversion ms-minutes

Résolu
Signaler
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004
-
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004
-
Bonjour tout le monde.
J'ai realisé un lecteur mp3 en flash.
Mon problème est un double problème en fait :
Premièrement, je récupère le temps écoulé de ma lecture en cours dans une variable (PositionText = Son.position / 1000;) ki s'affiche dans un champs de texte dynamique seulement, le temps est affiché en ms, pour le convertir en secondes facile (/1000) mais si je veux laffiché en (heure) minutes : secondes (voir dixièmes centièmes de secondes) comment faire?
Ayant essayer de contourner mon problème en gardant l'affichage Secondes : Millisecondes (3 décimales ), celui ci s'affiche avec 3 décimales ce qui n'est vraiment pas estetique et je ne trouve décidement pas non plus de solution pour supprimer une voir deux voir trois décimales. :-(((((

8 réponses

Messages postés
842
Date d'inscription
dimanche 24 novembre 2002
Statut
Membre
Dernière intervention
2 juillet 2007

t // temps à définir a définir
min = Math.floor(t/60000) // car 60000=60*1000
sec = Math.floor(t/1000-min*60) // on prend les secondes RESTANTES
ms = Math.floor(t-sec*1000)
temps = min+":"+sec+":"+ms


A toi de profiner !
SuperDevy
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004

j'allais oublier MERCI d'avance a celui (celle) (ceux) :-D (Celles?) ki pourraient m'aider.
Messages postés
842
Date d'inscription
dimanche 24 novembre 2002
Statut
Membre
Dernière intervention
2 juillet 2007

Il te suffit d'utiliser les fonction mathématiques :
- Math.round(numbre) pour arrondir un nombre
- Math.floor(numbre) pour tronquer un nombre (chiffre au dessous).

Dans ton cas, c'est plutôt floor que tu dois utiliser.
Exemple (laisse 1 décimale) :
ms = 52364 // en millisecondes
s = Math.floor(ms/100)/10 // en secondes
// on a bien 10*100=1000 --> ton nombre est divisé par 1000


A toi de profiner !
SuperDevy
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004

merci bcp!
cela dit si tu connais la solution pour la conversion en minute sa m'aiderais beaucoup mais la sa me déblok vraiment vraiment vraiment. ;o)
A+
Messages postés
842
Date d'inscription
dimanche 24 novembre 2002
Statut
Membre
Dernière intervention
2 juillet 2007

Pour les minutes, tu fais strictement la même chose sauf que, au lieu de diviser lar 1000, tu dois diviser par 60 !

SuperDevy
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004

OK je vais essayer sa tout de suite
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004

Voila, après une longue reflexion (???très longue ???) je me suis dit ke pour afficher minutes:secondes , il faut ke dès ke les 60 secondes atteintes on rajoute unne minute a la variable minute parskeu sinon sa n'a pas de sens ou alors procé der komme tu me l'a di c'est a dire en divisant les millisecondes par 6000 é en arondissant et dans ce cas la faire repartir les secondes à 0 touttes les 60 secondes [Sinon on se retrouverait avek des choses du genre 12min:86s...]. Kom plus haut je ne sais pas faire, Alé promis c'est la derniere!!! :-)

PS: G reussi a faire marché skeu tu ma di plus haut et avek seulement la conversion en secondes à 1 decimale sa va deja super bien ;-)
Messages postés
6
Date d'inscription
mardi 15 juin 2004
Statut
Membre
Dernière intervention
19 juillet 2004

merci enkore mais maintenant c'est du coté des ms ke sa foire car coment garder seulement les 3 dernieres decimales ? En effet toutes les min, 60000 se rajoutent a ms.
:-(