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

Windows Discussion :

Animation et calcul


Sujet :

Windows

  1. #1
    Membre régulier Avatar de inddzen
    Inscrit en
    Avril 2004
    Messages
    133
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2004
    Messages : 133
    Points : 81
    Points
    81
    Par défaut Animation et calcul
    Dans le code de calcul q je developpe, j'ai ajoute une animation ds une boite de dialog pour signaler que les calculs sont en cours, en effet, ca prend bcp de temps...
    Le probleme, c que la boite de dialog ne s'affiche que lorsque les calculs sont terminés!!!
    Pourtant, je ne fais appel à la fonction de calcul qu'apres avoir initialisé l'animation.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    ....
    case WM_INITDIALOG:
    {
            .....
            hAnim = CreateWindow(......);
            ....
            P->S->Schema();
    }
    Quelqu'un pourrait t'il m'aider?

  2. #2
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 382
    Points : 41 590
    Points
    41 590
    Par défaut
    Moi, je te conseillerais de faire le calcul dans un thread séparé, qui posterait un message vers la boite de dialogue une fois le calcul fini...

  3. #3
    Membre régulier Avatar de inddzen
    Inscrit en
    Avril 2004
    Messages
    133
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2004
    Messages : 133
    Points : 81
    Points
    81
    Par défaut
    Faut dire que j'en suis encore a la case debutant en ce qui concerne le therading

    Alors a votre avis faut-i creer deux threads syncronisés, un pour l'animation et un pour le calcul ou bien en creer un seul pour le calcul?

  4. #4
    Expert éminent sénior
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 382
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 382
    Points : 41 590
    Points
    41 590
    Par défaut
    Sous Windows, tout processus a au moins un thread.
    Donc pour l'instant, tu as un seul thread, qui fait calcul et animation.

    Et je te suggère de lancer un second thread qui s'occupera uniquement du calcul, postera un message à la Boite de dialogue (avec PostMessage(), un truc de base) et se terminera.

  5. #5
    Expert éminent sénior

    Homme Profil pro
    pdg
    Inscrit en
    Juin 2003
    Messages
    5 754
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : pdg

    Informations forums :
    Inscription : Juin 2003
    Messages : 5 754
    Points : 10 719
    Points
    10 719
    Billets dans le blog
    3
    Par défaut
    Pour que ton IHM "vive", il faut passer régulièrement dans la boucle des messages (GetMessage()...). Sinon aucun message n'est traité, et rien ne se passe. Ton code de calcul bloque le passage dans cette boucle, donc ton programme semble figé.
    Soit tu te débrouille pour régulièrement traiter les messages dans ton calcul (en testant s'il y a des messages via PeekMessage), soit tu crées un thread comme on t'a conseillé.
    On a eu une discution là dessus y'a pas très longtemps.

    Après recherche:
    http://www.developpez.net/forums/viewtopic.php?t=385265

  6. #6
    Membre régulier Avatar de inddzen
    Inscrit en
    Avril 2004
    Messages
    133
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Avril 2004
    Messages : 133
    Points : 81
    Points
    81
    Par défaut
    C parfait, j'ai utilisé un thread pr le calcul et ça marche.

    Merci pr l'aide

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

Discussions similaires

  1. [CS5] animation flash calcul d'une fonction
    Par joyeux2000 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 2
    Dernier message: 20/06/2012, 00h01
  2. Calcul de la duree d'une animation
    Par Melem dans le forum Flash
    Réponses: 2
    Dernier message: 02/12/2009, 13h45
  3. [TP7] Calculer sin, cos, tan, sqrt via le FPU
    Par zdra dans le forum Assembleur
    Réponses: 8
    Dernier message: 25/11/2002, 05h09
  4. Algo de calcul de FFT
    Par djlex03 dans le forum Traitement du signal
    Réponses: 15
    Dernier message: 02/08/2002, 18h45
  5. Passage de parametre a une anim Flash 5
    Par debug dans le forum Intégration
    Réponses: 4
    Dernier message: 03/06/2002, 18h59

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