Ce code a été publié sur le forum news.pcsoft.fr par Francis
MOREL
Dans le code d'initialisation de la fenêtre
mettre
EXTERNE "Winconst.wl"
CONSTANTE
WM_MOUSEWHEEL = 522
SB_LINEUP = 0
SB_LINEDOWN = 1
FIN
Evénement("GereRoulette","*.*",WM_MOUSEWHEEL)
ET DANS
la PROCEDURE "GereRoulette" mettre
PROCEDURE GereRoulette(Message, wParam, lParam)
iX est
un entier
iY est un entier
chFenInterne est une chaîne="FI_FenêtreInterne1" // Nom champ fenetre interne
iX=PoidsFaible(lParam)-FenIntPosX("")
iY=PoidsFort(lParam)-FenIntPosY("")
SI iX>{chFenInterne,indChamp}..X _ET_ iX<{chFenInterne,indChamp}..X+{chFenInterne,indChamp}..Largeur ALORS
SI iY>{chFenInterne,indChamp}..Y
_ET_ iY<{chFenInterne,indChamp}..Y+{chFenInterne,indChamp}..Hauteur ALORS
SI
wParam>0
ALORS wParam=SB_LINEUP SINON wParam=SB_LINEDOWN
SendMessage(Handle(chFenInterne),WM_VSCROLL,wParam,0)
FIN
FIN