5/5 (8 avis)
Vue 6 649 fois - Téléchargée 405 fois
// Fichiers d'en-tête (header) #include <windows.h> // Entrée du programme ( Fonction principale: "WinMain" ) int WinMain(HINSTANCE hThisInstance, HINSTANCE hPrevInstance, LPSTR lpszArgument, int nFunsterStil) { int clic; // Declaration de la variable "clic" do // Entrée de la boucle Do-While { // Renvoi la reponse de la MessageBox a la variable "clic" clic = MessageBox( HWND_DESKTOP, "Appuyer sur un bouton", " Duckz: Tutorial sur les MessageBox", MB_ABORTRETRYIGNORE|MB_ICONMASK|MB_RTLREADING); switch (clic) // Debut de l'instruction Switch { case IDABORT: // Si "clic" contient "IDABORT" MessageBox( HWND_DESKTOP, "Vous avez appuyé sur ABORT", " Duckz: Tutorial sur les MessageBox", MB_OK|MB_ICONQUESTION); break; // Sorti du switch case IDRETRY: // Si "clic" contient "IDRETRY" MessageBox( HWND_DESKTOP, "Vous avez appuyé sur RETRY", " Duckz: Tutorial sur les MessageBox", MB_OK|MB_ICONASTERISK); break; // Sorti du switch case IDIGNORE: // Si "clic" contient "IDIGNORE" MessageBox( HWND_DESKTOP, "Vous avez appuyé sur IGNORE", " Duckz: Tutorial sur les MessageBox", MB_OK|MB_ICONERROR); break; // Sorti du switch default: // Si "clic" ne contient ni "IDABORT", ni "IDRETRY", ni "IDIGNORE" break; // Sorti du switch } // Renvoi la reponse de la MessageBox a la variable "clic" clic = MessageBox( HWND_DESKTOP, "Voulez vous quitter le programme ?", " Duckz: Tutorial sur les MessageBox", MB_YESNO|MB_ICONWARNING|MB_RIGHT); } while (clic!=IDYES); // Repitition conditionelle de la boucle Do-While return 0; // Sortie du programme } // MessageBox( [1], [2], [3], [4] ) // // [1]: Niveau de la couche d'affichage // "HWND_DESKTOP" represente la couche la plus haute // (la premiere devant vos yeux) // // [2]: Contenu de la MessageBox au format texte (entre guillemet) // Le texte peut etre afficher sur plusieurs ligne grace au // caractere "\n" (sauter une ligne). // // [3]: Titre de la message box // Le titre ne peut etre afficher que sur une seul ligne // // [4]: Definition des objets de la MessageBox // Les objets sont separé par le caractere "|" // L'ordre des objets n'a aucunne importance. // Vous pouvez definir q'un seul objet "Bouton" ( HELP est une exeption ) // et "Icone", si vous en mettez deux, seul le premier sera traité. // Objets "Bouton" disponibles: // // MB_OK [OK] // MB_OKCANCEL [OK]+[CANCEL] // MB_YESNO [YES]+[NO] // MB_YESNOCANCEL [YES]+[NO]+[CANCEL] // MB_RETRYCANCEL [RETRY]+[CANCEL] // MB_ABORTRETRYIGNORE [ABORT]+[RETRY]+[IGNORE] // // MB_HELP ... +[HELP] // Objets "Icone" disponibles: // // MB_ICONERROR [son1 + X sur rond rouge] // MB_ICONSTOP [son1 + X sur rond rouge] // MB_ICONHAND [son1 + X sur rond rouge] // MB_ICONWARNING [son2 + ! sur triangle jaune] // MB_ICONEXCLAMATION [son2 + ! sur triangle jaune] // MB_ICONINFORMATION [son3 + i sur bulle blanche] // MB_ICONASTERISK [son3 + i sur bulle blanche] // MB_ICONQUESTION [pas de son + ? sur bulle blanche] // MB_ICONMASK [pas de son + pas d'icone] // MB_USERICON [pas de son + icone invisible] // // Par defaut les message box possede le [son0] qui peut // etre annuler par certains icones. // Autres Objets disponibles: // // MB_RTLREADING [inverse toute la MessageBox comme un miroir] // MB_RIGHT [decale le texte et le titre vers la droite] // MB_TYPEMASK [empeche l'execution de la MessageBox] // Message de retour des boutons: // // ID_YES [YES] // ID_NO [NO] // ID_OK [OK] // ID_CANCEL [CANCEL] // ID_ABORT [ABORT] // ID_RETRY [RETRY] // ID_IGNORE [IGNORE] // ID_HELP [HELP]
5 oct. 2002 à 18:05
5 oct. 2002 à 19:25
int clic;
do
{
clic=MessageBox(HWND_DESKTOP, "Appuyer sur un bouton", " Duckz: Tutorial sur les MessageBox", MB_ABORTRETRYIGNORE|MB_ICONMASK);
switch (clic)
{
case IDABORT:
MessageBox(HWND_DESKTOP, "Vous quittez
le programme !", " Duckz: Tutorial sur les MessageBox", MB_OK|MB_ICONWARNING|MB_RIGHT);
return 0;
case IDRETRY:
MessageBox(HWND_DESKTOP, "Vous avez appuyé sur RETRY", " Duckz: Tutorial sur les MessageBox", MB_OK|MB_ICONASTERISK);
break;
case IDIGNORE:
MessageBox(HWND_DESKTOP, "Vous avez appuyé sur IGNORE", " Duckz: Tutorial sur les MessageBox", MB_OK|MB_ICONERROR);
break;
default:
break;
}
} while (clic!=IDABORT);
5 oct. 2002 à 19:26
7 oct. 2002 à 17:33
je ne pense pas qu un goto rende un code source, de cette taille, illisible
Si tu ne met pas "return 0" le programme vas tourner en boucle et le seul moyen d en sortir sera [Control][Alt][Suppr] !!!
7 oct. 2002 à 18:53
Novelle source : MESSAGEBOX v1.1 > Pour fair plaisir a Kaid
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.