Ma MessageBox pose un problème de compilation dans une nouvelle classe

Résolu
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020 - 31 mars 2007 à 12:24
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020 - 1 avril 2007 à 11:06
Bonjour à tous !

Je ne comprend pas, je viens de créer une MFC , les MessageBox fonctionne dans mon programme normalement.
Je viens de rajouter des MessageBox dans une de mes classe, et la, erreur de compilation pour chaque MessageBox :

'MessageBoxA' : function does not take 3 parameters

Je viens de chercher assez longtemps sur google, mais je ne trouve pas de solution, meme les afxmessageBox ne semblent pas fonctionner !!

Merci à ceux qui pourront m'aider , bonne journée !!
A voir également:

10 réponses

cs_6co Messages postés 114 Date d'inscription lundi 27 janvier 2003 Statut Membre Dernière intervention 5 avril 2012 1
31 mars 2007 à 15:00
en effet MessageBox ne prend pas 3 paramètres


dans l'aide Win32 :

int MessageBox(


    HWND  hWnd,    // handle of owner window

    LPCTSTR  lpText,    // address of text in message box

    LPCTSTR  lpCaption,    // address of title of message box 

    UINT  uType     // style of message box

   );

bonne prog


6co
3
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
31 mars 2007 à 15:04
La fonction MessageBox prend 4 arguments.
C'est juste qu'une méthode MessageBox est définie dans CWnd, et celle la ne prend que 3 paramètres.
La classe dans laquelle tu a mis tes MessageBox n'hérite pas de CWnd, tu ne peux dont pas utiliser la méthode à trois paramètres.

_____________________________________
Un éditeur de ressources gratuit pour Windows
3
BruNews Messages postés 21040 Date d'inscription jeudi 23 janvier 2003 Statut Modérateur Dernière intervention 21 août 2019
1 avril 2007 à 00:36
Nixeus, pourquoi faire hériter une classe d'une autre juste pour un masquage de param ?
MessageBox a 4 params et il n'y a rien à y faire, quand tu n'en mets que 3 c'est MFC qui met le manquant pour toi mais il y sera par force.

ciao...
BruNews, MVP VC++
3
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
31 mars 2007 à 14:58
Quant tu crée une nouvelle classe, n'oublis pas de rajouter en haut du .CPP :
#include "stdafx.h"
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
31 mars 2007 à 15:07
AfxMessageBox n'hérite pas de CWnd, c'est une fonction globale.
0
vecchio56 Messages postés 6535 Date d'inscription lundi 16 décembre 2002 Statut Membre Dernière intervention 22 août 2010 14
31 mars 2007 à 15:12
J'ai pas parlé de AfxMessageBox je crois. Son problème est sur MessageBox et pas AfxMessageBox

_____________________________________
Un éditeur de ressources gratuit pour Windows
0
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
31 mars 2007 à 15:13
Merci pour toutes vos réponses rapides !

Ce que je ne comprend pas,c'est que j'utilise MessageBox, comme tel:

MessageBox("xxxxx","yyyy",MB_OK);

et ca fonctionne !

Mais la, dans ma classe créer, en fesant pareil j'ai cette fameuse erreure !!

Note: STdafx.h est bien intégré dans le cpp de ma classe !

Merci a tous si vous avez une autre idée !
0
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
31 mars 2007 à 15:14
Et donc, comment utiliser la méthode a 3 parametre, je doit faire hériter ma classe de cwnd ?
0
yann_lo_san Messages postés 1137 Date d'inscription lundi 17 novembre 2003 Statut Membre Dernière intervention 23 janvier 2016 26
31 mars 2007 à 15:29
C'était pas pour te contredire vecchio56, simplement pour dire qu'il pouvait utiliser Afx...
0
Nixeus Messages postés 192 Date d'inscription jeudi 18 janvier 2007 Statut Membre Dernière intervention 19 octobre 2020
1 avril 2007 à 11:06
D'accord les amis !

J'ai donc rajouté '0' en premier parametres, et MessageBox refonctionne normalement !!

Merci à tous pour l'aide aportée !
0
Rejoignez-nous