Page 1 sur 1
evenement de la molette des pad des ordinateurs portables
Publié : jeu. 19/mai/2011 17:01
par graph100
Bien, comme dis le titre du post, je n'arrive pas à récupérer d'une manière ou d'une autre les events des molettes des pad
des ordi portables.
C'est un cas particulier, je le sais bien, cependant, si une fonctionnalité d'un logiciel est autour de la molette de la souris,
sans alternative, un utilisateur avec un portable est dans la *****.
Je me suis rendu compte que la molette des pads ne génère pas d'event récupérable dans l'appli pb -_-
par contre, elle fonctionne sur les ascenseurs des treegadgets, etc ... Ce qui rend le problème d'autant plus mystérieux.
Des idées ???
Re: evenement de la molette des pad des ordinateurs portable
Publié : jeu. 19/mai/2011 17:58
par Chris
Les gadgets de Pb sont pratiquement tous des composants standards de Windows sous Windows, de Linux sous Linux, etc
Un TreeGadget n'est rien d'autre qu'un Tree-View Control sous Windows.
Essaye de passer par l'api pour récupérer les évènements dans la callback
Re: evenement de la molette des pad des ordinateurs portable
Publié : jeu. 19/mai/2011 19:35
par boddhi
@graph100 : Pardon si la question paraît idiote mais lorsque tu parles de molette sur portable, tu fais allusion à ça ???
Si c'est le cas, via un WindowCallback et API Windows, sa manipulation me retourne 3 types d'évènements dont un de valeur $20A qui correspond à la constante #WM_MOUSEWHEEL
Re: evenement de la molette des pad des ordinateurs portable
Publié : jeu. 19/mai/2011 21:39
par boddhi
Un début de piste...
Code : Tout sélectionner
Procedure.i Fc_WindowCallBack(hWnd,uMsg,wParam,lParam)
Define.i ValeurRetour
ValeurRetour=#PB_ProcessPureBasicEvents
Debug uMsg
Select uMsg
Case #WM_MOUSEACTIVATE
Debug "Appui sur pad/molette"
Debug "ID Fenetre :"+Str(wParam)
Debug "Type d'appui :"+Str(lParam)
; http://msdn.microsoft.com/en-us/library/ms645612%28v=vs.85%29.aspx
; et plus généralement http://msdn.microsoft.com/en-us/library/ff468874%28v=VS.85%29.aspx
Case #WM_MOUSEWHEEL
Debug "Défilement pad/molette souris utilisé(e)"
EndSelect
ProcedureReturn ValeurRetour
EndProcedure
OpenWindow(0,100,100,100,100,"Exemple",#PB_Window_SystemMenu)
SetWindowCallback(@Fc_WindowCallBack(),0)
Repeat
Until WaitWindowEvent()=#PB_Event_CloseWindow
Re: evenement de la molette des pad des ordinateurs portable
Publié : ven. 20/mai/2011 12:02
par graph100
merci
je jette un coup d’œil la dessus tout de suite
edit : ok ca fonctionne merci
