USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Dicas

  Visual Basic    (Forms/MDI)

Título da Dica:  Mover um form sem borda com API e sem API
Postada em 22/8/2007 por ghost_jlp            
Para executar os exemplos abaixo crie um novo projeto e coloque a propriedade BorderStyle = 0-None para ficar sem a borda.

1) Mover o form sem borda COM API

Option Explicit
Private Declare Function ReleaseCapture Lib "user32" () As Long
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
Const WM_NCLBUTTONDOWN As Long = &HA1
Const HTCAPTION As Long = 2

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)
Dim lngReturnValue As Long
If Button = vbLeftButton Then
    Call ReleaseCapture
    lngReturnValue = SendMessage(Me.hwnd, WM_NCLBUTTONDOWN, HTCAPTION,
0&)
End If
End Sub


2) Mover o form sem borda SEM API

Private OldX As Integer
Private OldY As Integer
Private DragMode As Boolean
Dim MoveMe As Boolean

Private Sub Form_MouseDown(Button As Integer, Shift As Integer, X As
Single, Y As Single)
MoveMe = True
OldX = X
OldY = Y
End Sub

Private Sub Form_MouseMove(Button As Integer, Shift As Integer, X As
Single, Y As Single)
If MoveMe = True Then
    Me.Left = Me.Left + (X - OldX)
    Me.Top = Me.Top + (Y - OldY)
End If
End Sub

Private Sub Form_MouseUp(Button As Integer, Shift As Integer, X As
Single, Y As Single)
Me.Left = Me.Left + (X - OldX)
Me.Top = Me.Top + (Y - OldY)
MoveMe = False
End Sub

'*************************************************

fonte: http://www.vbforums.com/showthread.php?t=231152&goto=nextoldest
 


CyberWEB Network Ltda.    © Copyright 2000-2024   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página