Question sur touche de clavier

Signaler
Messages postés
264
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
23 mars 2012
-
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
-
Bonjour a tous,

c'est la premiere fois que j'utilise le clavier dans mon programme. j'explique ce que je veux faire, p-t pourriez-vous m'aider.

j'ai un listview, je me deplace a l'aide du clavier. J'aimerais lorsques j'appuie sur "ENTER" cela m'affiche dans un msgox la valeur de la ligne selectionne.

Je sais qu'il y a un code pour le caractere "ENTER" mias je voudrais aussi celui de :"ESC" et "F12"

Merci
DRaaFil

7 réponses

Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Salut,

regarde dans ton explorateur d'objets (sur vb6, c'est F2).
Et tape dans la zone de recherche le mot KeyCode. Tu auras les constantes !

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
264
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
23 mars 2012

ok, mias pour le code pour faire cela, c'est quoi
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Beh inspire toi de mon code, mais c'est en vb6 (ça te mettra peut-être sur la voie) :

<small>
Coloration syntaxique automatique </small>
Option Explicit 

Const vbKeyF12 = 123 
Const vbKeyReturn = 13 
Const vbKeyEscape = 27 

Private Sub List1_KeyDown(KeyCode As Integer, Shift As Integer) 
    Select Case KeyCode 
' *** exemple avec la touche F12, tu auras en message l'item sélectionné
        Case vbKeyF12: MsgBox List1 
' *** exemple avec la touche Entrée, tu auras en message l'item sélectionné
        Case vbKeyReturn: MsgBox List1 
' *** exemple avec la touche Echap, tu auras en message l'item sélectionné
        Case vbKeyEscape: MsgBox List1 
    End Select 
End Sub 

<small>
Coloration syntaxique automatique </small>

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
264
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
23 mars 2012

merci car c'est en vb6
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Bah dans ce cas, c'est la bonne procédure ^^
T'as juste à remplacer List1 par le nom de ta List.

Pour la mauvaise catégorie, si admin passe par là, le changera dans VB6

Bonne prog

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--
Messages postés
264
Date d'inscription
mercredi 16 avril 2003
Statut
Membre
Dernière intervention
23 mars 2012

autre question en lien avec cela, savez-vous comment faire un if et non un case pour une touche.

comment faire pour que si j'appuie sur enter que le focus soit sur n'importe quel controle, cela fait un evenement. car pour le moment la selection est sur la listview et sa fonctionne mais pour le programme en general, je ne sais pas comment faire .

P.s ton code fonctionne #1

Merci

DraaFil
Messages postés
6786
Date d'inscription
vendredi 16 décembre 2005
Statut
Membre
Dernière intervention
21 décembre 2011
18
Re, pour le If et la touche Entrée :

<small> Coloration syntaxique automatique </small>
Option Explicit 

Const vbKeyF12 = 123 
Const vbKeyReturn = 13 
Const vbKeyEscape = 27 

Private Sub List1_KeyDown(KeyCode As Integer, Shift As Integer) 
' *** exemple avec la touche F12, tu auras en message l'item sélectionné
    If KeyCode = vbKeyF12 Then
        MsgBox List1
' *** exemple avec la touche Entrée, tu auras en message l'item sélectionné
    ElseIf KeyCode = vbKeyReturn Then
        MsgBox List1
        TonControl.SetFocus  ' *** sélection du contrôle
' *** exemple avec la touche Echap, tu auras en message l'item sélectionné
    ElseIf KeyCode = vbKeyEscape Then
        MsgBox List1
    End If
End Sub 

<small> Coloration syntaxique automatique </small>

@++

<hr size="2" width="100%" />
  --Mortalino--
Le mystérieux chevalier, "Provençal, le Gaulois"
<!--