[R] Menu contextuel dans un éditeur.

Aide et conseils concernant AutoIt et ses outils.
Règles du forum
.
Répondre
Avatar du membre
theAvenger
Niveau 5
Niveau 5
Messages : 159
Enregistré le : dim. 14 nov. 2010 15:26
Localisation : Alsace
Status : Hors ligne

[R] Menu contextuel dans un éditeur.

#1

Message par theAvenger »

Salut !

Alors voilà le problème : j'aimerais pouvoir mettre un menu contextuel sur un éditeur et je ne sais pas comment faire. Je débute donc je suis peut-être passé à côté de la solution.
Merci pour vos réponses !
Modifié en dernier par theAvenger le dim. 14 nov. 2010 21:29, modifié 2 fois.
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..]Menu contextuel dans un éditeur.

#2

Message par Jerome »

Coucou,


Pouvez vous préciser la nature de votre menu contextuel (click droit, double click, autre ?) ainsi que le type de l'éditeur ?




Jérôme
Avatar du membre
theAvenger
Niveau 5
Niveau 5
Messages : 159
Enregistré le : dim. 14 nov. 2010 15:26
Localisation : Alsace
Status : Hors ligne

Re: [..]Menu contextuel dans un éditeur.

#3

Message par theAvenger »

C'est un éditeur (GUICtrlCreateEdit) et je veux faire apparaître le menu contextuel avec un clique-droit.

Merci pour la réponse rapide !
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..] Menu contextuel dans un éditeur.

#4

Message par Jerome »

Re-Coucou,


Je te conseil de regarder mon post sur le forum anglais à ce sujet, il te suffira alors de l'adapter à tes besoins.

Ps: ceci pour detecter le click droit (ici sur une listview, mais adaptable à ce que tu veux je pense.) :
► Afficher le texte


Jérôme
Avatar du membre
theAvenger
Niveau 5
Niveau 5
Messages : 159
Enregistré le : dim. 14 nov. 2010 15:26
Localisation : Alsace
Status : Hors ligne

Re: [..] Menu contextuel dans un éditeur.

#5

Message par theAvenger »

Si j'ai bien compris, il faudrait que j'utilise la fonction "_GUICtrlListView_Create" pour créer le menu, puis de le faire apparaître à l'endroit du curseur quand il y a un clique droit.
C'est ça ?
Avatar du membre
Jerome
Niveau 9
Niveau 9
Messages : 661
Enregistré le : mar. 07 avr. 2009 08:35
Localisation : Picardie
Status : Hors ligne

Re: [..] Menu contextuel dans un éditeur.

#6

Message par Jerome »

Nop ^^

Ma listeview, c'est ce que toi tu veux mettre pour que quand on click droit, le menu apparaisse.

Dans le code, pour le menu c'est :

Code : Tout sélectionner

If ($aHit[0] <> -1) Then
        $hMenu = _GUICtrlMenu_CreatePopup()
        _GUICtrlMenu_AddMenuItem($hMenu, "Open", $idOpen)
        _GUICtrlMenu_AddMenuItem($hMenu, "Save", $idSave)
        Switch _GUICtrlMenu_TrackPopupMenu($hMenu, $List1, -1, -1, 1, 1, 2)
            Case $idOpen
                MsgBox("","","1")
            Case $idSave
                MsgBox("","","2")
        EndSwitch
        _GUICtrlMenu_DestroyMenu($hMenu)
    EndIf

En gros, tu lui dit que quand tu fait un click droit (fonction de mon post plus haut), sa t'affiche le menu que je vien de te donner.

Dans mon lien, pour moi je l'ai fait sur une listview, mais sa doit être adaptable pour un label ;)




Jérôme
Avatar du membre
Tlem
Site Admin
Site Admin
Messages : 11830
Enregistré le : ven. 20 juil. 2007 21:00
Localisation : Bordeaux
Status : Hors ligne

Re: [..] Menu contextuel dans un éditeur.

#7

Message par Tlem »

Il existe plusieurs méthodes de détection d'un clic ou d'un double clic, mais elles ne sont pas toutes équivalentes.

Le mieux comme jerome le sous entendait, serait d'utiliser la fonction GUIRegisterMsg().

Si vous regardez son code sur le forum Anglais et la documentation de cette fonction, vous devriez comprendre un peut mieux la logique de capture des événements.

Sinon, il y à peu, j'ai parlé de cette fonction en proposant un exemple lié. ;)
=> http://www.autoitscript.fr/forum/search.php
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é".
Avatar du membre
theAvenger
Niveau 5
Niveau 5
Messages : 159
Enregistré le : dim. 14 nov. 2010 15:26
Localisation : Alsace
Status : Hors ligne

Re: [..] Menu contextuel dans un éditeur.

#8

Message par theAvenger »

OK ! Merci pour les réponses !
Répondre