informatixo
Messages postés129Date d'inscriptionmercredi 4 février 2004StatutMembreDernière intervention25 juillet 2012
-
25 mai 2005 à 01:19
informatixo
Messages postés129Date d'inscriptionmercredi 4 février 2004StatutMembreDernière intervention25 juillet 2012
-
25 mai 2005 à 14:08
J'ai une confirmation de suppression que je fais à l'aide d'un MessageDlg de la manière suivante et qui fonctionne très bien !
MessageDlg('Voulez-vous réellement supprimer ces informations ?',mtConfirmation,[mbYes,mbNo],0);
Lors de cette affichage c'est le bouton oui qui a le focus,
c'est-à-dire qui est sélectionné par défaut. Le problème est que si
l'utilisateur appuie sur entrée par mégarde il perdra l'information.
J'ai regardé l'aide de delphi et ils mettent qu'il est possible de
définir un bouton par défaut lors de l'affichage du message en
procédant comme suit :
MessageDlg('Voulez-vous réellement supprimer ces informations ?',mtConfirmation,[mbYes,mbNo],0,mbNo);
Dans l'aide il est noté qu'il suffit d'indiquer en dernier (après le 0)
quel doit être le bouton par défaut, ici pour mon exemple "mbNo" qui
est souligné dans le message ci-dessus.
Le problème est que dès que je compile il s'arrête sur ce message en me
mettant le message d'erreur suivant : "[Erreur] Unit1.pas(28): Trop de
paramètres originaux"
Quelqu'un a t-il une idée ? Est-ce arrivé à quelqu'un ou bien est-ce
que celà fonctionne chez vous ? Peut-être est-ce mon Delphi 7 qui
déconne ?
cs_Kenavo
Messages postés702Date d'inscriptionvendredi 21 mars 2003StatutMembreDernière intervention 1 octobre 20095 25 mai 2005 à 07:45
Salut,
Pour répondre à ta question, Informatixo, if faut ajouter QDialogs à la clause Uses de ton unité.
Les deux définitions de la fonction MessageDialog ne sont pas dans la
même unité, et celle qui t'intéresse n'est pas dans l'unité Dialog
automatiquement citée dans le Uses de ton unité.
ni69
Messages postés1418Date d'inscriptionsamedi 12 juin 2004StatutMembreDernière intervention 5 juillet 201012 25 mai 2005 à 07:07
Utilise plutôt MessageBoxA. Cette
messageBox renvoie 7 quand on clique sur "Non" et 6 pour "Oui". Dans ta
procédure, tu peux écrire directement cette ligne :
if
MessageBoxA(0,Pchar('Voulez-vous réellement supprimer ces informations
?'),Pchar('Suppression'),MB_YESNO + MB_ICONQUESTION + MB_DEFBUTTON2) =
7 then exit;
Si l'utilisateur appuie sur "Non", la procédure s'arrête immédiatement, mais si il appuie sur oui, elle continue normalement.
@+
Bonne Prog'
Nico
<hr>
N'oubliez pas de cliquer sur Réponse acceptée lorsque la réponse vous convient !