Ir para conteúdo
Fórum Script Brasil
  • 0

Movimentar Janela Do Form .net


Beowulff

Pergunta

Boa tarde, sou novo por aqui e espero que vocês possam me ajudar, estou querendo movimentar meu form, quando o usuário clica em qualquer parte dele, no VB6 era tranquilo, usava SendMessage e ReleaseCapture, só que estou utilizando o vb.net, alguém sabe como fazer ??

Obrigado

Beowulff

Link para o comentário
Compartilhar em outros sites

3 respostass a esta questão

Posts Recomendados

  • 0

Bom, consegui fazer isso aqui no evento MouseMove:

        Static atualX, atualY As Integer

        If e.Button = MouseButtons.Left Then
            If atualX = 0 Then atualX = e.X
            If atualY = 0 Then atualY = e.Y

            Dim posição As New System.Drawing.Point()
            posição.X = Cursor.Position.X - atualX
            posição.Y = Cursor.Position.Y - atualY
            Me.DesktopLocation = posição
        Else
            atualX = atualY = 0
        End If

Mas ainda não ficou perfeito, porém não consigo ver o que está errado ali. Faça alguns testes aí e veja se você consegue.

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

  • 0

Obrigado, acabei conseguindo com a API mesmo, só fazendo algumas poucas alterações na declaração, segue o exemplo:

    Declare Function ReleaseCapture Lib "user32" () As Integer
    Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer

    Private Sub Logon_MouseDown(ByVal sender As Object, ByVal e As System.Windows.Forms.MouseEventArgs) Handles MyBase.MouseDown
        If e.Button = MouseButtons.Left Then
            ReleaseCapture()
            SendMessage(Me.Handle, WM_NCLBUTTONDOWN, HTCAPTION, 0)
        End If
    End Sub

Esse funcionou corretamente.

Link para o comentário
Compartilhar em outros sites

  • 0

É, eu pensei em recomendar a utilização das APIs mesmo, porém achei que não tivesse dado certo (por isso nem testei aqui também). De qualquer forma, obrigado por postar a solução (posso vir a precisar disso num futuro não muito distante...).

Abraços,

Graymalkin

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...