VB6 Focus + Presse sur Entrer [Résolu]

Messages postés
120
Date d'inscription
samedi 3 mai 2008
Dernière intervention
18 juillet 2013
- - Dernière réponse : cs_ssefyou
Messages postés
120
Date d'inscription
samedi 3 mai 2008
Dernière intervention
18 juillet 2013
- 12 déc. 2009 à 22:18
Salut,

j'ai une form qui contient une zone de text et des button,mon soucis c'est que je veux lancer un truc quant je tape la touche "entrer" du clavier
pour cela j'ai cree une sub form_keypresse .
mon probleme se pose quand un de mes button a le focus dans ce cas le presse sur la touche entrer declache un click
ce que je veux savoir est ce qu'il est possible de rien selectionner dans ma form et meme si je click sur un control il perd le focus
!!!
je suis sous VB6 (VB.net >>> VB6 )
youssef
Merci
Afficher la suite 

Votre réponse

6 réponses

Meilleure réponse
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
3
Merci
lancer une action en pressant une touche, ok, mais il vaux mieux un bon vieux bouton, sur lequel on puisse cliquer... (ne jamais ce contenter de raccourcis clavier)

d'autant qu'il suffira de mettre la propriété Default de ce bouton a True

pour que la touche entrée déclenche le _Click du bouton...


Renfield - Admin CodeS-SourceS - MVP Visual Basic

Merci Renfield 3

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

Codes Sources a aidé 97 internautes ce mois-ci

Commenter la réponse de Renfield
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
0
Merci
Bonjour,
Il est toujours possible de faire en sorte qu'aucun contrôle de ta form ne puisse avoir le focus (propriété enabled ou visible mise à False pour tous)... Mais ensuite ? où vas-tu ainsi et pourquoi une Form et des contrôles, alors ?
En ce qui concerne la touche ENTER, elle est en effet interceptée prioritairement par Windows lui-même et ton code ne peut donc rien y faire lorsque le contrôle ayant le focus est susceptible de réagir à l'emploi de cette touche (ce sera, entre autres, le cas d'un bouton de commande, d'un optionbutton, etc...)
Si tu veux donc "lancer un truc" par utilisation d'une touche, choisis autre chose que la touche ENTER (ni la touche TAB, d'ailleurs...)


____________________
Très intéressante fable, L'OISELEUR, L'AUTOUR ET L'ALOUETTE !
Cliquer sur "Réponse acceptée" (en bas d'une solution avérée adéquate) rendra service à d'autres. PENSEZ-Y.
Commenter la réponse de ucfoutu
Messages postés
17308
Date d'inscription
mercredi 2 janvier 2002
Dernière intervention
22 août 2018
0
Merci
pour detecter une touche depuis la form, quelque soit le controle qui a le focus, suffit au passagge de mettre sa popriété KeyPreview à True (sur ta Form)

Renfield - Admin CodeS-SourceS - MVP Visual Basic
Commenter la réponse de Renfield
Messages postés
120
Date d'inscription
samedi 3 mai 2008
Dernière intervention
18 juillet 2013
0
Merci
je pense que c fesable sans desactiver ou cacher les controls ,la preuve c la calculatrice de windows


Merci
Commenter la réponse de cs_ssefyou
Messages postés
18039
Date d'inscription
lundi 7 décembre 2009
Statut
Contributeur
Dernière intervention
11 avril 2018
0
Merci
Oui ?
Alors :
1) la calculatrice de Windows est faite par ... Microsoft
2) Qui te dit, d'ailleurs, qu'elle est composée de CommandButtons ?
Et qui te dit que le focus n'est pas systématiquement donné, après chaque action, à la zone (apparemment de texte) tout en haut ? (ce qui est apparemment bien le cas, puisque si tu frappes un chiffre, il s'écrit automatiquement dans cette zone)
Tu peux d'ailleurs faire la même chose : ajouter une textbox et lui donner systématiquement le focus, depuis chaque autre contrôle sur lequel tu agirais, et gérer alors l'évènement KeyDown de ta textbox (if keycode = 13 then ...). Mais ce sera un bricolage (ajout d'une textbox dont tu n'as pas forcément besoin .... gêne constante de l'utilisateur, etc...)
Ce sera en tout état de cause, dans ces conditions là (textbox avec le focus après toute action, quelle que soit l'action) un évènement de la textbox et non un évènement général.
Mais enfin, ===>> nous t'avons, je pense, répondu le plus complètement possible et tu es seul à savoir quelles sont les contraintes de ton appli et les gênes qu'occasionnerait un tel procédé.



____________________
Très intéressante fable, L'OISELEUR, L'AUTOUR ET L'ALOUETTE !
Cliquer sur "Réponse acceptée" (en bas d'une solution avérée adéquate) rendra service à d'autres. PENSEZ-Y.
Commenter la réponse de ucfoutu
Messages postés
120
Date d'inscription
samedi 3 mai 2008
Dernière intervention
18 juillet 2013
0
Merci
Merci pour le conseil
Commenter la réponse de cs_ssefyou

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.