Forms: Un effet OnMouseOver |
Author(s) Dev Ashish |
|
Un effet OnMouseOver.
(Q) Comment créer un effet à la OnMouseOver pour un
formulaire Access?
(A) La procédure événementielle équivalente, sous
Access, est OnMouseMove. On peut appeler une fonction pour montrer
cet effet désiré et utiliser la procédure événementielle du OnMouseMove
événementielle, pour enlever l'effet.
Pour chaque étiquette sur un formulaire, y placer un appel à la fonction fSetFontBold dans leur procédure événementielle OnMouseMove, en passant le nom de cette étiquette comme argument, un peu comme:
[OnMouseMouve] = fSetFontBold("ThisLabelControlName")
et sur l'environnement immédiat entourrant ces étiquettes, faire plutôt l'appel:
[OnMouseMouve] = fRemoveFontBold( )
Voici les deux fonctions. Il faut également créer une variable au niveau du formulaire (section déclaration du formulaire).
Dim mstPrevControl As String
Function fSetFontBold(stControlName As String)
Const cBold = 700
Const cNormal = 400
On Error Resume Next
With Me(mstPrevControl)
.FontWeight = cNormal
.ForeColor = 1279872587
End With
mstPrevControl = stControlName
With Me(stControlName)
.FontWeight = cBold
.ForeColor = 0
End With
End Function
Function fRemoveFontBold()
Const cNormal = 400
On Error Resume Next
With Me(mstPrevControl)
.FontWeight = cNormal
.ForeColor = 1279872587
End With
End Function
|