Я пытаюсь написать функцию, которая должна определять, находится ли мышь в диапазоне в пикселях (диапазон пикселей конкретного элемента управления)Определите, находится ли мышь над элементом управления? (над диапазоном пикселов управления)
Проблема в том, что функция работает только для границ Form
, не работайте для кнопок или любого другого элемента управления, который я тестировал ... что мне не хватает?
''' <summary>
''' Determinates whether the mouse pointer is over a pixel range of the specified control.
''' </summary>
''' <param name="Control">The control.</param>
''' <returns>
''' <c>true</c> if mouse is inside the pixel range, <c>false</c> otherwise.
''' </returns>
Private Function MouseIsOverControl(ByVal [Control] As Control) As Boolean
Return [Control].Bounds.Contains(MousePosition)
End Function
PS: Я знаю использование событий мыши, но эта функция предназначена для общего использования.
'Return [Control] .ClientRectangle.Contains ([Control] .PointToClient (MousePosition))' –
@ Бьорн-Роже Kringsjå Thankyou, но кажется, что это не очень эффективным, так как, например, мне нужно поставить MOSE вокруг + 10 пикселей над Picturebox, чтобы вернуть «True», если я поместил мышь рядом с углом изображения, я получаю «False», также если я попытаюсь узнать, есть ли мышь над кнопкой, всегда получаю «False» (когда должно быть правда). – ElektroStudios
FYI: Я отредактировал комментарий. 'Me.PointToClient' -' [Control] .PointToClient'. –