bluelive
Messages postés17Date d'inscriptionvendredi 27 décembre 2002StatutMembreDernière intervention18 octobre 2003
-
22 avril 2003 à 11:40
Arsena
Messages postés190Date d'inscriptionlundi 24 mars 2003StatutMembreDernière intervention27 septembre 2005
-
22 avril 2003 à 13:24
BlueLive :big)
Peut-on simuler un mouseover et mouseout sur un picturebox
comme avec des image web lorsque la souris passe sur un bouton la couleur change et quand celle-ci n'est plus dessus, il reprend sa couleur d'origne..
Merci
Arsena
Messages postés190Date d'inscriptionlundi 24 mars 2003StatutMembreDernière intervention27 septembre 2005 22 avril 2003 à 13:24
Il faut utilise les API "SetCapture" et "ReleaseCapture"
Essaye ça
Option Explicit
'Ajouter a la feuille 1 pictureBox
'SetCapture capture un objet pour le modifier
Private Declare Function SetCapture Lib "user32" ( _
ByVal hwnd As Long) As Long
'ReleaseCapture Arrete la capture
Private Declare Function ReleaseCapture Lib "user32" () As Long
Dim LG As Long, HT As Long, BC As Long
Private Sub Form_Load()
'Largeur de la fenetre
Form1.Width = 6000
BC = Picture1.BackColor 'Couleur du fond d'origine du PictureBox
End Sub
Private Sub Picture1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)LG Picture1.Width: HT Picture1.Height
SetCapture (Picture1.hwnd) 'Capture le pictureBox et le modifie
Picture1.BackColor = vbGreen 'Couleur du PictureBox (Vert)
If X < 0 Or Y < 0 Or X > LG Or Y > HT Then
ReleaseCapture 'Arrete la capture et remet la couleur d'origine
Picture1.BackColor = BC 'BC=Couleur du fond d'origine &H8000000F
End If
End Sub