begin process at 2008 07 06 17:29:00
1 205 682 membres
247 nouveaux aujourd'hui
14 119 membres club

Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum.
Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

Sujet : MessageBox --> utilisation? [ Système / Autre ] (BastienL21)

MessageBox --> utilisation? le 13/05/2008 19:01:20

BastienL21
Bonsoir à tous,
    Récament, j'ai trouvé cette "fonction" dans un code :
MessageBox(0, test, 0, 0x3);
Je voudrais savoir comment on peu traiter la réponse que l'on met car selon les derniers chiffres (ici 0x3), on peu avoir des boîtes avec plusieur choix (abandonner, recommencer etc, etc...)
(récupérer ce sur quoi a cliqué l'user et en fonction de cela, pouvoir "l'aiguiller" différement


//Merci à tous de vous interesser à mon problème,
Cordialement,

Re : MessageBox --> utilisation? le 13/05/2008 19:43:53

mogwai93
MessageBox n'est qu'une fonction qui retourne une valeur
il suffit de la récuperer :
http://msdn.microsoft.com/en-us/library/ms645505(VS.85).aspx


Re : MessageBox --> utilisation? le 13/05/2008 20:09:50

BastienL21
Merci bcp mais, STP, pourrais-tu mettre un code exemple ou qqch dans ce genre car les trucs msdn j'y comprends rien!!! (les bouts de code où même les exemples copier/coller marche pas...)

Pour info avec le code exemple j'ai :
|In function `DisplayResourceNAMessageBox':|
|55|error: `MB_CANCELTRYCONTINUE' undeclared (first use in this function)|
|55|error: (Each undeclared identifier is reported only once|
|55|error: for each function it appears in.)|

|56|warning: passing arg 2 of `MessageBoxA' from incompatible pointer type|
|56|warning: passing arg 3 of `MessageBoxA' from incompatible pointer type|
|63|error: `IDTRYAGAIN' undeclared (first use in this function)|
|66|error: `IDCONTINUE' undeclared (first use in this function)|
|=== Build finished: 5 errors, 2 warnings ===|

(Je compile en C sous Code::Blocks)


//Merci à tous de vous interesser à mon problème,
Cordialement,

Re : MessageBox --> utilisation? le 13/05/2008 21:58:55

vecchio56
(Admin CS)
Ca veut dire que MB_CANCELTRYCONTINUE n'est pas déclaré.
Voici l'ensemble des constantes définies dans winuser.h. Tu vois que pour utiliser cette constante, il faut que WINVER >= 0x0500

/*
 * MessageBox() Flags
 */
#define MB_OK                       0x00000000L
#define MB_OKCANCEL                 0x00000001L
#define MB_ABORTRETRYIGNORE         0x00000002L
#define MB_YESNOCANCEL              0x00000003L
#define MB_YESNO                    0x00000004L
#define MB_RETRYCANCEL              0x00000005L
#if(WINVER >= 0x0500)
#define MB_CANCELTRYCONTINUE        0x00000006L
#endif /* WINVER >= 0x0500 */


#define MB_ICONHAND                 0x00000010L
#define MB_ICONQUESTION             0x00000020L
#define MB_ICONEXCLAMATION          0x00000030L
#define MB_ICONASTERISK             0x00000040L

#if(WINVER >= 0x0400)
#define MB_USERICON                 0x00000080L
#define MB_ICONWARNING              MB_ICONEXCLAMATION
#define MB_ICONERROR                MB_ICONHAND
#endif /* WINVER >= 0x0400 */

#define MB_ICONINFORMATION          MB_ICONASTERISK
#define MB_ICONSTOP                 MB_ICONHAND

#define MB_DEFBUTTON1               0x00000000L
#define MB_DEFBUTTON2               0x00000100L
#define MB_DEFBUTTON3               0x00000200L
#if(WINVER >= 0x0400)
#define MB_DEFBUTTON4               0x00000300L
#endif /* WINVER >= 0x0400 */

#define MB_APPLMODAL                0x00000000L
#define MB_SYSTEMMODAL              0x00001000L
#define MB_TASKMODAL                0x00002000L
#if(WINVER >= 0x0400)
#define MB_HELP                     0x00004000L // Help Button
#endif /* WINVER >= 0x0400 */

#define MB_NOFOCUS                  0x00008000L
#define MB_SETFOREGROUND            0x00010000L
#define MB_DEFAULT_DESKTOP_ONLY     0x00020000L

#if(WINVER >= 0x0400)
#define MB_TOPMOST                  0x00040000L
#define MB_RIGHT                    0x00080000L
#define MB_RTLREADING               0x00100000L


#endif /* WINVER >= 0x0400 */

#ifdef _WIN32_WINNT
#if (_WIN32_WINNT >= 0x0400)
#define MB_SERVICE_NOTIFICATION          0x00200000L
#else
#define MB_SERVICE_NOTIFICATION          0x00040000L
#endif
#define MB_SERVICE_NOTIFICATION_NT3X     0x00040000L
#endif

#define MB_TYPEMASK                 0x0000000FL
#define MB_ICONMASK                 0x000000F0L
#define MB_DEFMASK                  0x00000F00L
#define MB_MODEMASK                 0x00003000L
#define MB_MISCMASK                 0x0000C000L

_____________________________________
Un éditeur de ressources gratuit pour Windows


Re : MessageBox --> utilisation? le 14/05/2008 13:39:20

BastienL21
Merci mais je suis sensé faire quoi!???
Ceci n'est pas plutôt pour pouvoir "traduire" en fonction de la valeur que retourne la boite?
Si oui ce que je cherche est de savoir la valeur que retourne la boite, et ensuite pouvoir l'interpréter.


//Merci à tous de vous interesser à mon problème,
Cordialement,

Re : MessageBox --> utilisation? le 14/05/2008 18:38:44

vecchio56
(Admin CS)
La valeur retournée dépend du bouton sur lequel tu cliques (ex: IDOK pour OK, IDCANCEL pour Annuler...)
C'est écrit dans le lien qui t'a été donné plus haut :

IDABORTAbort button was selected.
IDCANCELCancel button was selected.
IDCONTINUEContinue button was selected.
IDIGNOREIgnore button was selected.
IDNONo button was selected.
IDOKOK button was selected.
IDRETRYRetry button was selected.
IDTRYAGAINTry Again button was selected.
IDYESYes button was selected.

_____________________________________
Un éditeur de ressources gratuit pour Windows


Re : MessageBox --> utilisation? le 14/05/2008 20:22:15

BastienL21
Oui mais c'est la valeur retournée que je veu récupérer pour la stocker dans une variable...

//Merci à tous de vous interesser à mon problème,
Cordialement,

Re : MessageBox --> utilisation? le 14/05/2008 20:24:47

vecchio56
(Admin CS)
Réponse acceptée !
Ben ca ne pose aucune problème pour qui maitrise les bases du C :

int retour = MessageBox(...);
if(retour == IDOK)
{
  L'utilisateur a cliqué sur OK
}

_____________________________________
Un éditeur de ressources gratuit pour Windows


Re : MessageBox --> utilisation? le 14/05/2008 20:48:35

BastienL21
Merci beaucoup


//Merci à tous de vous interesser à mon problème,
Cordialement,

Re : MessageBox --> utilisation? le 15/05/2008 18:08:01

BastienL21
Meri ca fonctionne très bien

Vecchio :
"Ben ca ne pose aucune problème pour qui maitrise les bases du C"
  ????Tout le monde, même les meilleurs, passent par la case 'débutant'
 ???????????????????????????

//Merci à tous de vous interesser à mon problème,Cordialement,


[Page 1 Page 2]
Classé sous : fonction, utilisation, messagebox, 0x3

Participer à cet échange

Pub



Appels d'offres

Plugin Dialer outlook
Budget : 2 000€
Travail graphique- ill...
Budget : 1 000€
creation de marque et ...
Budget : 1 000€

CalendriCode

Juillet 2008
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

VS Express FR Gratuit !

VS Express en français et 100% gratuit !

Téléchargements

Logiciels à télécharger sur le même thème :

Boutique

Boutique de goodies CodeS-SourceS