Shortcuts - raccourcis claviers

Résolu
desperados27 Messages postés 121 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 1 juillet 2015 - 16 avril 2008 à 16:15
chuspyto Messages postés 6 Date d'inscription samedi 12 avril 2008 Statut Membre Dernière intervention 25 septembre 2008 - 25 sept. 2008 à 17:40
Bonjour,

Je voudrais assigner par exemple la touche "Entrée" à un bouton. Comment puis-je faire ? Merci.

10 réponses

cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
16 avril 2008 à 17:09
Tu peux aussi utiliser KeyDown.

Exemple :
    Private Sub Form1_KeyDown(ByVal sender As Object, ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown
        Select Case e.KeyCode
            Case Keys.F12
                Button1.PerformClick()
            Case Keys.F11
                Button2.PerformClick()
        End Select
    End Sub

Attention, il te faudra probablement que tu mette la propriété KeyPreview de ta form à True pour qu'elle intercepte les touches avant les autres controles.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
3
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
16 avril 2008 à 16:20
Dans ta form à la propriété AcceptButton indique lui ton bouton.

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
desperados27 Messages postés 121 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 1 juillet 2015
16 avril 2008 à 16:27
A super je ne savais pas !

Mais maintenant si je veux lui assigner n'importe quelle touche !?
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
16 avril 2008 à 16:34
Non, sur la Form, tu vas trouver une propriété pour la touche Entrée et une pour la touche Cancel.

Après si tu veux asssigner d'autres touches à d'autres boutons, il te faut le gerer manuellement par le code en interceptant la touche appuyée (évènement Keypress) et en simulant le click sur le bouton correspondant (methode PerformClick).

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
desperados27 Messages postés 121 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 1 juillet 2015
16 avril 2008 à 16:45
Ca ne me gêne pas de le gérer manuellement. J'ai déjà essayé d'utiliser les évènements KeyPress, mais je n'arrive pas à assigner une touche précise à cet évènement !
0
desperados27 Messages postés 121 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 1 juillet 2015
16 avril 2008 à 17:24
J'ai mis la propriété KeyPreview sur True.

Aussi, je ne peux pas faire e.KeyCode, seulement e.KeyChar
    Select Case e.KeyCode
            Case Keys.F12   'ici il me donne une erreur et me propose : Case ChrW(Keys.F12)
                Button1.PerformClick()
    End Select

M'enfin dans les 2 cas rien ne se passe.
0
desperados27 Messages postés 121 Date d'inscription samedi 4 novembre 2006 Statut Membre Dernière intervention 1 juillet 2015
16 avril 2008 à 17:27
Je n'ai rien dit ! Je m suis trompé d'évènement, j'avais utilisé le KeyPress au lieu du KeyDown.
Merci casy, mainteant ça fonctionne.
0
chuspyto Messages postés 6 Date d'inscription samedi 12 avril 2008 Statut Membre Dernière intervention 25 septembre 2008
25 sept. 2008 à 17:10
bonjour,
j'ai essaye la methode performClick mais cela ne fonctionne pas.
faut il declarer la methode?et comment?
merci
0
cs_casy Messages postés 7741 Date d'inscription mercredi 1 septembre 2004 Statut Membre Dernière intervention 24 septembre 2014 40
25 sept. 2008 à 17:23
PerformClick n'existe que sur les boutons et que en .Net.

si tu es en VB6, PerformClick n'existe pas. Il faut passer par les autres solutions

---- Sevyc64  (alias Casy) ----<hr size="2" width="100%" /># LE PARTAGE EST NOTRE FORCE #    http://aide-office-vba.monforum.com/index.php
0
chuspyto Messages postés 6 Date d'inscription samedi 12 avril 2008 Statut Membre Dernière intervention 25 septembre 2008
25 sept. 2008 à 17:40
comment je peux simuler un click sur un bouton si je suis en visual basic pour access 2007?
0