Clique sur un bouton ou appuier sur une touche

[Résolu]
Signaler
Messages postés
19
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
9 octobre 2005
-
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
-
Je voudrais savoir comment faire pour que ce code fonctionne aussi
lorsque l'on appuie sur une touche du clavier par exemple la touche A.
Donc que ce script s'exécute lorsque j'appuie sur le bouton relais1 ou
que j'appuie sur la touche A du clavier . Merci.







'Exécuté lorsque le bouton du Relais 1 est pressé

Private Sub Relais1_Click()



'Si le bouton affiche Relais

If Relais1.Caption = "Relais &a" Then



'Ecrire Stop sur le bouton

Relais1.Caption = "Stop &a"



'Colorer la case à gauche en jaune

Case1.BackColor = &HFFFF&



'Si la case à gauche est décochée et le curseur =0

If Case1.Value 0 Then 'valStrobe1.Caption 0 And



'Cocher la case

Case1.Value = 1



'Mettre le premier bit du port // à 1

DlPortWritePortUshort numPort, DlPortReadPortUshort(numPort) - valCorr + 1



'Visualiser la valeur du port // en bas

AddPort.Caption = DlPortReadPortUshort(numPort) - valCorr

End If



'Si le bouton affiche Stop

Else



'Si la case à gauche est cochée

If Case1.Value = 1 Then



'Décocher la case à gauche

Case1.Value = 0



'Mettre à 0 le premier bit du port //

DlPortWritePortUshort numPort, DlPortReadPortUshort(numPort) - valCorr - 1

End If



'Visualiser la valeur du port // en bas

AddPort.Caption = DlPortReadPortUshort(numPort) - valCorr



'Ecrire Relais sur le bouton

Relais1.Caption = "Relais &a"



'Colorer en gris la case à gauche

Case1.BackColor = &H8000000F

End If

End Sub

4 réponses

Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
16
Maintenant, si tu utilises le keypress du form, il faut mettre le keypreview du form à true pour lui indiquer que les évènements clavier sont d'abord traités par le form.
Mais, pour ton cas, il ne faut pas de zones de saisie (textbox...) sur le form. Sinon, tu risques d'avoir des problèmes.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?
3
Merci

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 70 internautes nous ont dit merci ce mois-ci

Messages postés
3172
Date d'inscription
dimanche 15 février 2004
Statut
Membre
Dernière intervention
9 avril 2017
35
Bonjour



Dans Form_KeyPress mettre:

If KeyAscii = 97 Then Call Relais1_Click()


ChRB
<hr size="2" width="100%">
Merci de cliquer sur "Réponse acceptée" si une réponse vous convient.
Messages postés
19
Date d'inscription
mercredi 16 février 2005
Statut
Membre
Dernière intervention
9 octobre 2005

j'ai mis ça :



Private Sub FormMain_KeyPress()



If KeyAscii Asc("a") Or KeyAscii Asc("A") Then Call Relais1_Click

End If



End Sub



Mais sa marche pas !!
Messages postés
3757
Date d'inscription
mardi 23 septembre 2003
Statut
Modérateur
Dernière intervention
13 mars 2006
16
Salut, si tu mets "&a" dans le caption de ton bouton, il suffit de presser ALT + a (ou A) et ça exécute le clic de ton bouton.
Seule chose à faire attention, il ne faut pas qu'un autre bouton de la même form ait un "&a" dans son caption.

-------------------------------------------------
Dresseur de puces, .... normal pour un loup !?