Etienne BAUDOUX

Vous souhaitez réagir à ce message ? Créez un compte en quelques clics ou connectez-vous pour continuer.
Etienne BAUDOUX

Forum sur les projets de Etienne BAUDOUX

Le deal à ne pas rater :
SSD interne Crucial BX500 2,5″ SATA – 500 Go à 29,99€
29.99 €
Voir le deal

2 participants

    Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Afficher un décompte sous la forme M:S ??

    Message par lereparateurdepc Mer 23 Juin 2010 - 8:32

    Bonjour ,

    Je viens de trouver une astuce pour faire un décomptage mais je n'arrive pas a l'afficher sous la forme M:S où M sont des minutes et S des secondes .

    Mon décompte est fait par un timer qui désincrémante de 1 par un calcul simple avec reste entier une variable chargée à 120 s dès le démarrage de mon appli ; pour le moment je charge et décharge un progressbar .
    Téléchargable ici : [url]http://rapidshare.com/files/401932283/test_progressbar.exe.html[/url]

    Merci de votre aide .
    Bonne journée


    Dernière édition par lereparateurdepc le Mer 23 Juin 2010 - 9:31, édité 4 fois (Raison : lien de téléchargement ajouté !! et beug de l'url)
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par Admin Mer 23 Juin 2010 - 11:06

    Bonjour,

    Il suffirai de faire un simple calcul en tenant compte que 1min = 60sec, et que 1sec = 1000 milliseconde

    Utilisez l'action Calcul Simple pour faire cela ^^
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par lereparateurdepc Mer 23 Juin 2010 - 14:47

    re ,

    Quand je fait un calcul le décompte est 1.99 .... or moi je veux 1:59 ... 1:58 ... etc

    merci

    Bonne journée
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par Admin Mer 23 Juin 2010 - 15:11

    Bon, je n'ai pas testé mais je pense que ce système devrait fonctionner :

    Code:
    - Créer une Boucle
        - Si Tmp_Total > 60 000 millisec, alors
            - M incrémente de 1
            - Tmp_Total = Tmp_Total - 60 000 millisec
        - Sinon
            - S = Tmp_Total / 1000 millisec
            - Sortir de la boucle
    - Fin de la boucle

    En gros ce qu'il se passe c'est qu'on récupère le nombre de minutes qu'il y a dans le tmp_total (qui fait également "temps restant").
    Une fois qu'on a récupéré toute les minutes (Tmp_Total < 60 000 millisec), il nous reste que des secondes (ici, sous la forme de millisec).
    Donc on récupère le nombre de seconde, et on sort de la boucle vu qu'on sais que c'est finit ^^

    Et voila Afficher un décompte sous la forme M:S ?? [ RESOLU ] Icon_smile

    Bon je n'ai pas testé hein, mais ça me semble correcte.

    @+
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par lereparateurdepc Mer 23 Juin 2010 - 15:37

    Re ,

    Pouvez-vous décrire un peu plus les étapes ?

    Faut-il utiliser un timer ?

    merci
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par Admin Mer 23 Juin 2010 - 15:44

    Oups, en effet j'ai oublié un chaptire :

    Créez une Timer avec la propriété Tick sur 1000 (comme ça l'évènement Tick se déclenche chaque seconde)

    Une variable Tmp_Total égale à 120 (120 sec)
    Une variable M = 0
    Une variable S = 0

    Dans une fonction lié à l'évènement Tick du Timer, mettez les actions suivantes :

    Code:
    - Créer une Boucle
        - Si Tmp_Total > 60, alors
                    - Calcul Simple : M = M + 1
                    - Calcul Simple : Tmp_Total = Tmp_Total - 60
        - Sinon
                    - Calcul Simple : S = Tmp_Total / 1 (donc cette action est facultative, elle permettait de faire la conversion des millisec aux sec dans mon dernier message)
                    - Modifier une variable : Une_Variable = %(M)%:%(S)%
                    - Sortir de la boucle
    - Fin de la boucle

    Et voila Smile
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par lereparateurdepc Mer 23 Juin 2010 - 15:58

    RE ,

    Je reste figé à 1:60 !
    Voilà ce que j'ai mis :
    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Sz_bmp12
    Encaure merci
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par Admin Mer 23 Juin 2010 - 16:14

    Oups, au lieu de mettre Tmp_Total > 60, mettez >= (logique non?) ^^

    Petite note :
    J'ai oublié quelque chose je pense :

    Là, à chaque fois que la fonction Timer_Tick est déclenché, on vide la variable Tmp_Total, donc quand la fonction est exécuté pour la deuxième fois, Tmp_Total est inférieur à 60sec (alors qu'une seule seconde c'est écoulé entre les 2 déclenchements de l'évènement).

    Donc ce qu'il faudrait faire c'est, avant la boucle, rajouté un petit
    (soit Une_Variable = 120 par défaut)
    Calcul Simple : Une_Variable = Une_Variable - 1
    Modifier une variable : Tmp_Total = Une_Variable

    Voila, ainsi on pourras bosser sur Tmp_Total sans perdre le temps restant (de 120sec à 0sec)
    Et comme ça, à chaque fois que l'évènement Tick est déclenché (1 fois toute les 1sec), on décrémente Une_Variable de 1, donc le temps restant baisse de 1 sec à chaque fois ^^
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par lereparateurdepc Mer 23 Juin 2010 - 16:22

    On progresse ,

    Les secondes décompte mais les minutes s'incrémantes !!

    On y arrive !!!!!!

    Merci
    Admin
    Admin
    Administrateur
    Administrateur


    Masculin Nombre de messages : 1882
    Age : 32
    Localisation : Boulogne Billancourt(92100)(France)
    Emploi/loisirs : Software Development Engineer
    Date d'inscription : 24/01/2008

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par Admin Mer 23 Juin 2010 - 16:33

    Décidément je n'ai pas fait attention à ton sujet, désolé.

    Aller, c'est logique :

    On dit que M = M + 1 si Tmp_Total est supérieur à 60 sec.

    La première fois que Tick se délenche, M = 0
    La seconde fois, M = 1
    la fois d'après 2....etc

    Evidemment, vu que M n'est plus égale à 0 ^^

    Donc avant la boucle, met un "Modifier une variable" M = 0 (cette valeur n'est pas du texte)
    lereparateurdepc
    lereparateurdepc



    Masculin Nombre de messages : 5622
    Age : 32
    Localisation : Calvados
    Emploi/loisirs : Electrotechnicien / électricité, HAUTE TENSION, électronique, informatique, automatisme , Arduino, bref le BRICOLAGE , ...
    Humeur : toujours cool
    Date d'inscription : 31/01/2010

    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par lereparateurdepc Mer 23 Juin 2010 - 16:40

    Re ,

    Merci d'avoir résolu mon problème .

    Ce sujet est donc RESOLU !!

    Bonne fin de journée

    Contenu sponsorisé


    Afficher un décompte sous la forme M:S ?? [ RESOLU ] Empty Re: Afficher un décompte sous la forme M:S ?? [ RESOLU ]

    Message par Contenu sponsorisé


      La date/heure actuelle est Jeu 21 Nov 2024 - 19:34