IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

[QTime] Affichage incorrect après 59 s

  1. #1
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 440
    Points : 43 082
    Points
    43 082
    Par défaut [QTime] Affichage incorrect après 59 s
    Bonsoir,

    J'ai un soucis avec QTime.

    Voici mon code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    QTime displaytime(temps/3600,temps/60,temps%3600);
     qDebug()<<displaytime.toString("hh:mm:ss");
    temps est un Qint64
    quand temps vaut 59 secondes, l'affichage qDebug est correct : "00:00:59"
    1 seconde après le résultat est ""

    quelqu'un a une idée d'où je me suis trompé ?
    Merci d'avance.
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonsoir,

    C'est ton calcul des secondes qui est faux : pour temp = 60 :
    • temps/3600 = 0
    • temps/60 = 1
    • temps%3600 = 60 et non 0 !

    Et la documentation précise bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    QTime::QTime(int h, int m, int s = 0, int ms = 0)
    h must be in the range 0 to 23, m and s must be in the range 0 to 59, and ms must be in the range 0 to 999.
    Il te faut retrancher les minutes avant d'appliquer le modulo, et il en va de même pour les heures/minutes.

  3. #3
    Responsable Systèmes


    Homme Profil pro
    Gestion de parcs informatique
    Inscrit en
    Août 2011
    Messages
    17 440
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Gestion de parcs informatique
    Secteur : High Tech - Matériel informatique

    Informations forums :
    Inscription : Août 2011
    Messages : 17 440
    Points : 43 082
    Points
    43 082
    Par défaut Mais quel con ...
    Merci Winjerome, quel con.

    Des fois un regard externe ... et tout se débloque..

    Merci

    Le code corrrigé :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
      temps=temps/1000;
      secondes=temps%60;
      minutes=temps/60;
      heures=minutes/60;
      minutes=minutes%60;
      QTime displaytime(heures,minutes,secondes);
    Ma page sur developpez.com : http://chrtophe.developpez.com/ (avec mes articles)
    Mon article sur le P2V, mon article sur le cloud
    Consultez nos FAQ : Windows, Linux, Virtualisation

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. format de données incorrecte apres synchronisation
    Par mahboub dans le forum Access
    Réponses: 3
    Dernier message: 18/01/2007, 15h17
  2. [VB.NET][ComboBox] Pb Affichage d'après ArrayList
    Par mainecoon dans le forum Windows Forms
    Réponses: 2
    Dernier message: 08/11/2006, 08h49
  3. affichage image après passage de la souris sur bouton
    Par nerser dans le forum AWT/Swing
    Réponses: 2
    Dernier message: 30/01/2006, 22h53
  4. [MS-SQL]Affichage incorrect : System.Char[]
    Par the big ben 5 dans le forum Bases de données
    Réponses: 10
    Dernier message: 30/11/2005, 08h52
  5. Affichage incorrect avec une JScrollPane
    Par tck-lt dans le forum Agents de placement/Fenêtres
    Réponses: 23
    Dernier message: 04/08/2005, 11h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo