Il est souvent utile d'avertir l'utilisateur par un message rapide, pour lui faire part d'une information ou pour lui signaler une erreur. Il existe différentes méthodes. Les plus simples et les plus utiles sont
ShowMessage
et
MessageDlg
. ShowMessage permet d'afficher un message tout simple dans une fenêtre :
ShowMessage("Tâche effectuée");
La fonction ShowMessage prend pour argument un AnsiString qui est le contenu du message. L'autre méthode, plus perfectionnée, est MessageDlg. Cette fonction permet de personnaliser un peu la boite de dialogue :
MessageDlg("La tâche a été effectuée correctement", mtInformation, TMsgDlgButtons() mbOK, 0);
Cette fonction permet d'afficher un message (AnsiString passée en premier argument). Le second argument indique le type de boite de dialogue.
mtInformation
affiche une icône "information" dans la boite de dialogue. Enfin, l'avant-dernier argument permet de choisir quels boutons seront disponibles dans la boite de dialogue. Le dernier argument permet de lier la boite de dialogue à une rubrique d'aide. Un des grands avantages de cette fonction est qu'elle permet de savoir quel bouton a été enfoncé s'il y en avait plusieurs :
if (MessageDlg("Le document n'a pas été sauvegardé, voulez-vous le sauvegarder avant de quitter ?",
mtConfirmation, TMsgDlgButtons() mbYes mbNo, 0) == mrYes)
Sauver();
Dans ce code, la fonction
Sauver
est appellée si le bouton
Oui
est cliqué. Pour plus de détails sur le fonctionnement de MessageDlg, consultez l'aide de C++Builder.
On notera donc la possibilité d'utiliser les deux fonctions ShowMessage et MessageDlg, la seconde étant utile pour tester les boutons appuyés.