Bonjour,
pas trouvé de réponse dans les FAQ à la question suivante:
lorsque j'utilise une boite de dialogue utilisateur, est il possible de tester
le clic sur 'annuler' ?
merci
Version imprimable
Bonjour,
pas trouvé de réponse dans les FAQ à la question suivante:
lorsque j'utilise une boite de dialogue utilisateur, est il possible de tester
le clic sur 'annuler' ?
merci
Salut,
Le click même de la souris je ne sais pas, mais avec if ... then comme ceci je pense:
J'espère ne pas être hors sujet.Code:
1
2
3
4
5 If MsgBox("Voulez-vous ..... ?", vbOkCancel, "") = vbCancel Then ..... Else .... End if
@+ :wink:
Dans l'aide Access
Je viens de tester, ça marche.Citation:
Si l'utilisateur clique sur OK ou appuie sur ENTRÉE , la fonction InputBox renvoie le texte contenu dans la zone de texte. Si l'utilisateur clique sur le bouton Annuler, la fonction renvoie une chaîne de longueur nulle ("")
Voici mon code
Donc tu peux exploiter la valeur renvoyée par le clic sur le bouton Annuler de l'inputbox.Code:
1
2
3
4
5
6
7
8
9
10
11 Private Sub Commande0_Click() If InputBox("test dvp !", "Ceci est un exercice") = "" Then MsgBox "coucou c est cancel" Exit Sub Else MsgBox "coucou c est pas cancel" Exit Sub End If End Sub
slt,
sauf qu'en testant directement la chaîne renvoyée, tu ne fais pas la différence entre un click sur ok sans rentrer de texte et un click sur annuler
ça peut être utile pour par exemple :
- utiliser le résultat dans un critère si OK avec un texte dans la boîte
- continuer un traitement sans critère si OK sans rien rentrer dans la boîte
- annuler le traitement si click sur Annuler
les deux derniers cas peuvent être distingués en vérifiant la valeur du pointeur de la chaîne renvoyée (si on appuye sur cancel alors l'input box renvoie une chaîne vide sans pointeur)
donc :
affiche "click sur OK" même si on clique sur OK sans avoir entré de texte dans la boîte de dialogueCode:
1
2
3
4
5
6
7 dim lstr as string lstr = inputbox("test") if strptr(lstr) = 0 then msgbox "click sur annuler" else msgbox "click sur ok" endif
nickel !
merci