Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: KGF.dll - Interception des clics Lun 7 Mar 2016 - 12:19 | |
| Klaus j' ai un doute. Pour intercepter un événement de la souris sur un objet : - Code:
-
res% = dll_call2("ClickSetHook",handle(objet à surveiller),handle(Edit associé)) normalement je dois avoir dans l' Edit : action:x,y | |
|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - Interception des clics Lun 7 Mar 2016 - 12:51 | |
| Oui... mais ce n'est pas suffisant. La fonction ClickSetHook établit un lien entre un objet Panoramic et un objet EDIT caché. La fonction ClickSetLink détermine quel évènement souris sir l'objet à surveiller est à signaler dans l'EDIT. Exemple, pour un mémo pour lequel on veut gérer le clic gauche et le clic droit: - Code:
-
label event dim res% memo 10 : ' mémo à surveiller edit 11 : hide 11 : on_change 11,event : ' EDIT de référence
res% = dll_call2("ClickSetHook",handle(10),handle(11)) : ' liéer les deux objets res% = dll_call2("ClickSetLink",handle(10),1) : ' intercepter clic gauche res% = dll_call2("ClickSetLink",handle(10),3) : ' et le clic droit
... event: message "Evènement: "+text$(11) return | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Mar 2016 - 13:03 | |
| heu...dans la doc, il est dit que :
res% = dll_call2("ClickSetLink",hnd_button%,typ%)
mais ceci dit, je n' ai rien dans mon Edit que je n' ai pas "hider" pour visualiser. Y aurait il un souci avec Windows 10 et ces fonctions ?... | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Mar 2016 - 13:10 | |
| Mon code avec les deux - Code:
-
dim kgf$,res%,typ%,hnd%,hnd2%,hnd3% label change,clic
kgf$ = "C:\KGF\KGF.dll" dll_on kgf$
height 0,250 width 0,400
memo 1 hnd%=handle(1) width 1,width(0)-30 height 1,height(0)-70 top 1,30 left 1,10 bar_both 1
Edit 2 top 2,5 left 2,10 hnd2%=handle(2) on_change 2,change
button 3 hnd3%=handle(3) top 3,5 left 3,width(2)+15 height 3,20 on_click 3,clic
caption 0,str$(hnd%)+" / "+str$(hnd2%)+" / "+str$(hnd3%)
res% = dll_call2("ClickSetHook",hnd%,hnd2%) res% = dll_call2("ClickSetLink",hnd2%,5) res% = dll_call2("ClickSetLink",hnd3%,5)
end
change: caption 0,text$(2) return
clic: caption 0,text$(2) return | |
|
Klaus
Nombre de messages : 12331 Age : 75 Localisation : Ile de France Date d'inscription : 29/12/2009
| Sujet: Re: KGF.dll - Interception des clics Lun 7 Mar 2016 - 13:10 | |
| Si, si - ça marche: - Code:
-
label event dim res% memo 10 : ' mémo à surveiller edit 11 : hide 11 : on_change 11,event : ' EDIT de référence dll_on "KGF.dll" res% = dll_call2("ClickSetHook",handle(10),handle(11)) : ' liéer les deux objets res% = dll_call2("ClickSetLink",handle(10),1) : ' intercepter clic gauche res% = dll_call2("ClickSetLink",handle(10),3) : ' et le clic droit
end
event: message "Evènement: "+text$(11) return Clic gauche: Clic droit: | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Mar 2016 - 13:21 | |
| Ton code fonctionne, pas le mien ! Et là je ne vois rien de différent si ce n' est les attributs des objets... | |
|
Yannick
Nombre de messages : 8635 Age : 53 Localisation : Bretagne Date d'inscription : 15/02/2010
| Sujet: re Lun 7 Mar 2016 - 13:27 | |
| J' ai corrigé... pas les bons handle aux bons endroits | |
|
Contenu sponsorisé
| Sujet: Re: KGF.dll - Interception des clics | |
| |
|