Перетаскивание формы за любой объект - Visual Basic .NET

Узнай цену своей работы

Формулировка задачи:

Видел где-то такой пример:
Работает хорошо, но только на форме. Если схватиться, допустим, за Label , то ничего не происходит. Может кто подсказать, как можно сделать так, что бы и за другие объекты тоже тянуло?

Решение задачи: «Перетаскивание формы за любой объект»

textual
Листинг программы
Public Class Form1
    Private Const WM_NCLBUTTONDOWN As Integer = &HA1
    Private Const HTCAPTION As Integer = 2
 
    Private Declare Function ReleaseCapture Lib "user32" () As Long
    Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwdn As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
 
 
    Private Sub DragForm(ByVal sender As System.Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown
        If e.Button = MouseButtons.Left Then
            Me.Opacity = 0.35
            ReleaseCapture()
            SendMessage(Me.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0)
            Me.Opacity = 1
        End If
    End Sub
End Class

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

5   голосов , оценка 4.2 из 5
Похожие ответы