Смена картинки в Image при наведении на неё мышкой - VB
Формулировка задачи:
У меня есть картинки 1.jpg и 2.jpg. На форме есть Image1 с картинкой по умолчания 1.jpg. При наведении на эту картинку курсором надо что бы она стала 2.jpg. Это я сделал с помощью MouseMove. Но мне надо чтобы при отведении курсора в другое место картинка становилась вновь 1.jpg.
Я пытался сделать это с помощью таймера, но таймер совсем не выход. Из-за него лагает. Да и дико это как то.
Решение задачи: «Смена картинки в Image при наведении на неё мышкой»
textual
Листинг программы
Option Explicit Private Declare Function SetCapture Lib "user32" (ByVal hwnd As Long) As Long Private Declare Function ReleaseCapture Lib "user32" () As Long Dim capControl As Image Private Sub Form_Load() For Each capControl In imgLeave Set capControl.Picture = picState(1).Picture Next End Sub Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single) If Not capControl Is Nothing Then Set capControl.Picture = picState(2).Picture End If End Sub Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single) If Not capControl Is Nothing Then Set capControl.Picture = picState(1).Picture Set capControl = Nothing ReleaseCapture End If End Sub Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single) If Not capControl Is Nothing Then SetCapture capControl.Container.hwnd Set capControl.Picture = picState(1).Picture End If End Sub Private Sub imgLeave_MouseMove(Index As Integer, Button As Integer, Shift As Integer, X As Single, Y As Single) If Not capControl Is Nothing Then If capControl Is imgLeave(Index) Then Exit Sub Set capControl.Picture = picState(1).Picture End If SetCapture imgLeave(Index).Container.hwnd Set capControl = imgLeave(Index) Set capControl.Picture = picState(0).Picture End Sub
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д