[R] Actionnement d'un bouton par appui de la touche entrer

Aide sur les Interfaces Graphique Utilisateurs (GUI).
Règles du forum
.
Répondre
Cyrille
Niveau 3
Niveau 3
Messages : 46
Enregistré le : lun. 21 avr. 2008 12:18
Status : Hors ligne

[R] Actionnement d'un bouton par appui de la touche entrer

#1

Message par Cyrille »

Bonsoir,

Je chercher a faire en sorte que lorsqu'on appui sur la touche entrer un bouton précis de la fenêtre soit activé. J'illustre :
Image
lorsque j'ai fini de rentre mon mot de passe je voudrais faire entrer pour valider.

C'est sûrement tout bête comme question mais je sais pas du tout ^^

merci d'avance.
Modifié en dernier par Cyrille le dim. 02 nov. 2008 16:19, modifié 1 fois.
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11796
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [...] Actionnement d'un bouton par appui de la touche entrer

#2

Message par Tlem »

Il vous faut utiliser la fonction HotKeySet.

Code : Tout sélectionner

#Include <GuiButton.au3>
HotKeySet("{ENTER}", "Valid")

...
Le Code.
...

Func Valid()
    HotKeySet("{ENTER}") ; Pour désactiver le HotKeySet.
    _GUICtrlButton_Click($hWnd) ; $hWnd est le handle du bouton.
EndFunc
 
Thierry

Rechercher sur le forum ----- Les règles du forum
Le "ça ne marche pas" est une conséquence commune découlant de beaucoup trop de raisons potentielles ...

Une idée ne peut pas appartenir à quelqu'un. (Albert Jacquard) tiré du documentaire "Copié n'est pas volé".
Cyrille
Niveau 3
Niveau 3
Messages : 46
Enregistré le : lun. 21 avr. 2008 12:18
Status : Hors ligne

Re: [...] Actionnement d'un bouton par appui de la touche entrer

#3

Message par Cyrille »

Il me manque l'include GUIButton.au3
J'ai vérifier dans le dossier include de autoit et il n'y ai effectivement pas.
Est ce un problème d'installation ? ou de version ? ou je ne sais quoi -_-
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [...] Actionnement d'un bouton par appui de la touche entrer

#4

Message par jbnh »

Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Cyrille
Niveau 3
Niveau 3
Messages : 46
Enregistré le : lun. 21 avr. 2008 12:18
Status : Hors ligne

Re: [...] Actionnement d'un bouton par appui de la touche entrer

#5

Message par Cyrille »

Merci, à priori ça marche, mais mon problème est différent maintenant.
Je sais pas quand désactiver le HotKey.
En fait c'est un peu complexe. Voici une partie de mon code :
► Afficher le texte
Quand on fait entrer on désactive direct le HotKey, mais si le mot de passe est incorrect on doit le retaper, et du coup le HotKey est désactivé et n'a pas été réactivé... Je sais pas où il faut que je le désactive...
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [...] Actionnement d'un bouton par appui de la touche entrer

#6

Message par jbnh »

Code : Tout sélectionner

 ElseIf $motdepasse <> $mdpIsOk Then
        MsgBox(48, "Mot de passe incorect", "Entre le bon mot de passe")
    EndIf
Dans cette partie la tu réactive ton hotkeyset non?
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Cyrille
Niveau 3
Niveau 3
Messages : 46
Enregistré le : lun. 21 avr. 2008 12:18
Status : Hors ligne

Re: [...] Actionnement d'un bouton par appui de la touche entrer

#7

Message par Cyrille »

Oui c'est tout bête >_< mais j'avais pas vu ça comme ça, merci bien :wink:
Avatar du membre
jbnh
Niveau 11
Niveau 11
Messages : 1932
Enregistré le : ven. 02 mai 2008 14:54
Localisation : Bruxelles
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#8

Message par jbnh »

Fait gaffe de bien le mettre en dessous de la msgbox sinon si il appuie sur enter pour la msgbox ca va faire un beau bug
Balise [..] devant votre requête en cours, [R] quand résolu | Pas de message concernant les bots !

Merci
Cyrille
Niveau 3
Niveau 3
Messages : 46
Enregistré le : lun. 21 avr. 2008 12:18
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#9

Message par Cyrille »

C'est fait ça marche impec ^^
Merci
Avatar du membre
arrkhan
Niveau 8
Niveau 8
Messages : 528
Enregistré le : sam. 17 nov. 2007 03:30
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#10

Message par arrkhan »

Reponse quelques peu tardive mais ca n'aurait pas ete plus simple de mettre directement sous le bouton un GUICtrlSetState(-1, $GUI_DEFBUTTON) ?
AbsoluteZero
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 02 sept. 2008 11:27
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#11

Message par AbsoluteZero »

Bonjour,

Je sais que ce topic a été résolu mais il y a une chose qui m'intrigue ... Je souhaiterai savoir quelle parti du code a été utilisé pour réalisé la simple box qui est affiché en haut.

Il y a plusieur applet SQL dans le code ... mais n'ayant aucune connaissance en SQL je ne sais pas qu'elles sont les informations que je dois utliser.

Merci pour vos suggestions.
Cyrille
Niveau 3
Niveau 3
Messages : 46
Enregistré le : lun. 21 avr. 2008 12:18
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#12

Message par Cyrille »

Le code pour la fenêtre c'est juste celui là :
Le sql c'est juste en rapport avec mon programme et pas la box.

Code : Tout sélectionner

Func connexionUser_GUI()
    #Region ### START Koda GUI section ### Form=
    $Form3 = GUICreate("Connexion", 243, 137, -1, -1)
    GUISetIcon("D:\008.ico")
    $i_motdepasse = GUICtrlCreateInput("password", 3, 77, 233, 21, BitOR($ES_PASSWORD,$ES_AUTOHSCROLL))
    $ButtonOk = GUICtrlCreateButton("&OK", 81, 109, 75, 25, 0)
    $ButtonCancel = GUICtrlCreateButton("&Annuler", 162, 109, 75, 25, 0)
    $Label = GUICtrlCreateLabel("Mot de passe :", 3, 57, 74, 17)
    $Label1 = GUICtrlCreateLabel("Identifiant :", 8, 7, 56, 17)
    $i_identifiant = GUICtrlCreateInput("Entre ton identifiant", 3, 27, 233, 21)
    GUISetState(@SW_SHOW)
    #EndRegion ### END Koda GUI section ###
EndFunc
Avatar du membre
TheBlade
Niveau 2
Niveau 2
Messages : 17
Enregistré le : lun. 22 déc. 2008 15:29
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#13

Message par TheBlade »

Une info qui peut t'aider (Pris du fichier d'aide AutoIt) :

Section GUI Control Styles

Disponible dans <ButtonConstants.au3>
$BS_DEFPUSHBUTTON : 0x0001

Creates a push button with a heavy black border. If the button is in a dialog box, the user can select the button by pressing the ENTER key, even when the button does not have the input focus. This style is useful for enabling the user to quickly select the most likely option, or default.

Donc il te suffit de donner cette constante à ton bouton au moment de sa creation :
GUICtrlCreateButton ( "text", left, top [, width [, height [, $BS_DEFPUSHBUTTON [, exStyle]]]] )

En tout etat de cause, il sera pris en compte a chaque pression de la touche [ENTREE]
AbsoluteZero
Niveau 1
Niveau 1
Messages : 6
Enregistré le : mar. 02 sept. 2008 11:27
Status : Hors ligne

Re: [R] Actionnement d'un bouton par appui de la touche entrer

#14

Message par AbsoluteZero »

Je vous remercie de votre aide ... j'étais tout simplement coincé pour faire une fenêtre avec deux champs à remplir.

:mrgreen:
Répondre