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

MFC Discussion :

[MFC] Synchronisation


Sujet :

MFC

  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2004
    Messages : 189
    Par défaut [MFC] Synchronisation
    Salut,

    J'ai un petit soucis de synchronisation... J'ai un activeX qui fait des affichages 3D, et j'ai une interface conteneur. Mon interface demande a l'activeX des donnees ou de changer certaines donnees.

    J'aimerai que quand mon interface fait une demande, elle attente que la demande soit finie. Dans mon activeX, je sais envoye un event a mon interface sans probleme. Comment puis je faire que mon interface envoi la demande et ne sorte pas de sa fct tant que l'event n'est pas recu? Je suis coince a ce niveau la...

  2. #2
    Rédacteur
    Avatar de abelman
    Inscrit en
    Février 2003
    Messages
    1 106
    Détails du profil
    Informations forums :
    Inscription : Février 2003
    Messages : 1 106
    Par défaut
    Salut

    En faisant une boucle qui attend ton message et en pensant à vider la pompe à messages

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
     
    while (EventNonArrivé)
    {
        TestSi ton msg est arrivé. Si oui le traité et sortir de la boucle
        PumpMessage();
    }
     
    // Tiré de la faq vc
    void CMyApp ::PumpMessages() 
    { 
       // Handle dialog messages 
        MSG msg; 
        while(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) 
        { 
            if (!AfxGetApp()->PreTranslateMessage(&msg)) 
          { 
             ::TranslateMessage(&msg); 
             ::DispatchMessage(&msg); 
         }            
         AfxGetApp()->OnIdle(0);   // updates user interface 
        AfxGetApp()->OnIdle(1);   // frees temporary objects 
        } 
    }

  3. #3
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    189
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2004
    Messages : 189
    Par défaut
    Ca en effet je pensais le faire, un autre soucis arrive.... Je ne sais pas l'ID de l'event qui arrive ....

    Quand je gere l'event par le gestionnaire d'evenement voici ce qui est genere mais je ne vois pas non plus l'ID de l'event :-(

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    BEGIN_EVENTSINK_MAP(CQuestactivex_configurateur, CWnd)
    	ON_EVENT(CQuestactivex_configurateur, IDC_QUESTACTIVEX_CONFIGURATEUR, 1, OnEventQuestactivexConfigurateur, VTS_BSTR)
    END_EVENTSINK_MAP()
    La je dois bien avouer que je m'en mele les pinceaux pffff

Discussions similaires

  1. Réponses: 12
    Dernier message: 12/08/2014, 18h49
  2. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  3. Réponses: 1
    Dernier message: 23/05/2005, 15h52
  4. Réponses: 2
    Dernier message: 10/06/2002, 11h03
  5. [MFC] ADO connection
    Par philippe V dans le forum MFC
    Réponses: 3
    Dernier message: 10/06/2002, 07h36

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