Postup:
Deklarujte v
deklarační části formuláře:
Private Declare Function SendMessage Lib "user32" Alias
_
"SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, _
ByVal wParam As Long, lParam As Any) As Long
Private Const LB_ITEMFROMPOINT = &H1A9
Na formulář přidejte
ListBox. Na jeho událost MouseMove:
Private Sub List1_MouseMove(Button As Integer, Shift As Integer,
_
X As Single, Y As Single)
Dim lXPoint As Long
Dim lYPoint As Long
Dim lIndex As Long
If Button = 0 Then
lXPoint = CLng(X / Screen.TwipsPerPixelX)
lYPoint = CLng(Y / Screen.TwipsPerPixelY)
With List1
lIndex = SendMessage(.hwnd, LB_ITEMFROMPOINT, 0, ByVal _
((lYPoint * 65536) + lXPoint))
If (lIndex >= 0) And (lIndex <= .ListCount) Then
.ToolTipText =
.List(lIndex)
Else
.ToolTipText = ""
End If
End With
End If
End Sub
Ještě je třeba na událost Form_Load
přidat nějaké položky do ListBoxu:
Private Sub Form_Load()
List1.AddItem "První položka"
List1.AddItem "druhá položka"
List1.AddItem "Třetí položka"
List1.AddItem "Čtvrtá položka"
List1.AddItem "Pátá položka"
End Sub
|