Dim bClick As Boolean
Option Explicit
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
bClick = True
End Sub
Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
Static nX As Single
Static nY As Single
If bClick Then
If nX <> 0 Then
Me.Left = Me.Left + X - nX
Else
nX = X
End If
If nY <> 0 Then
Me.Top = Me.Top + Y - nY
Else
nY = Y
End If
Else
nX = 0
nY = 0
End If
End Sub
Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
bClick = False
End Sub
DilanDog ha scritto:Qualcuno mi sa dire come posso fare per muovere un form "acchiappandolo" sul corpo del form stesso anzichè sulla barra del titolo?Forse c'è qualche windows message (via API) da intercettare/inviare?
Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Public Declare Function ReleaseCapture Lib "user32" () As Long
Public Const WM_NCLBUTTONDOWN = &HA1
Public Const HTCAPTION = 2
Public Const EM_GETLINECOUNT = &HBA
Public Sub MoveFormByDragDrop(MouseButton As Integer, objForm As Form)
'-------------------------------------------------------------------------
' Muove una finestra come se si usasse il drag&drop sulla barra del titolo
'-------------------------------------------------------------------------
If MouseButton = vbLeftButton Then
ReleaseCapture
SendMessage objForm.hWnd, WM_NCLBUTTONDOWN, HTCAPTION, 0&
End If
End Sub
Silver Black ha scritto:...
Robby78 ha scritto:Silver Black ha scritto:...
bella lì!! buono a sapersi
Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
MoveFormByDragDrop(Button, Me)
End Sub
Visitano il forum: Nessuno e 1 ospite
megalab.it: testata telematica quotidiana registrata al Tribunale di Cosenza n. 22/09 del 13.08.2009, editore Master New Media S.r.l.; © Copyright 2008 Master New Media S.r.l. a socio unico - P.I. 02947530784. GRUPPO EDIZIONI MASTER Spa Tutti i diritti sono riservati. Per la pubblicità: Master Advertising