[MFC/VC++] Problème de pointeur

Problème de pointeur [MFC/VC++] - C++ - Programmation

Marsh Posté le 27-01-2005 à 01:50:14    

Bonjour à tous,
 
Je bosse en MFC (SDI) sous Visual .NET, et je cherche à appeler une fonction CxxxView::Affichage(...) à partir d'une fonction CMaSocket:: OnReceive(int nErrorCode).
 
Le but étant d'afficher un Static text(par exemple), dans la fenetre principale de la View lorsque je reçois un message provenant du réseau.
 
Je pense qu'il faut que je déclare un pointeur de type "CxxxView* ptr" dans ma classe "CMaSocket"
et après, je tape : ptr->Affichage();
Mais ça provoque une erreur  :??: et je ne vois pas comment m'en sortir !
 
Donc merci de votre aide. Et si vous avez une autre méthode + efficace, je suis preneur  ;)


Message édité par djtiaf le 27-01-2005 à 02:34:05
Reply

Marsh Posté le 27-01-2005 à 01:50:14   

Reply

Marsh Posté le 27-01-2005 à 13:01:00    

Salut,
 
ça devrait fonctionner si ptr de ta classe CMaSocket est bien initialisé par le pointeur de ta vue, faut voir comment et quand tu l'initialise.... vérifie bien...
 
C'est quoi l'erreur ? d'execution ou de compile ?

Reply

Marsh Posté le 28-01-2005 à 18:21:03    

En fait j'ai trouvé, j'ai rajouté la partie suivante dans xxxxApp.cpp :
 
 
 
BOOL CxxxxApp::InitInstance()
{
 
. . .
 
POSITION pos = GetFirstDocTemplatePosition();  
 if (pos)  
 {  
  // recup pts sur le modele de document  
  CDocTemplate * pdt = GetNextDocTemplate(pos);  
  if (pdt)  
  {  
   // recup position du premier document  
   POSITION dpos = pdt->GetFirstDocPosition();  
   if (dpos)  
   {  
    // ptr sur document  
    CxxxxDoc * pdoc = (CxxxxDoc*)pdt->GetNextDoc(dpos);  
    if (pdoc)  
    {  
     // position de l'objet d'affichage  
     POSITION vpos = pdoc->GetFirstViewPosition();  
     if (vpos)  
     {  
      // pointeur sur l'affichage?  
      CxxxxView * pview = (CxxxxView*)pdoc->GetNextView(vpos);  
      pdoc->pPDoc=pdoc;
      pdoc->pPView=pview;
     }
     
    }
   }  
  }
 }
 
return TRUE;
}
 
 
En plus de ça j'ai rajouté quelques pointeur pDoc dans les classe ou je voulait faire de l'affichage...
Et hop j'ai récupérer les pointeurs pour gérer des variables du Doc et afficher des trucs dans le View.
Nikel.


Message édité par djtiaf le 02-02-2005 à 15:59:44
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed