MOVER TEXTBOX EM RUNTIME

MFLAVIO 30/09/2022 10:50:14
#500524
Ola pessoal blz

gente estou tentando montar uma forma do usuário definir posição de alguns item da tela
estou usando o código abaixo para pegar a posição do ponteiro do mouse e aplicar no componente

   Private Sub LBL_Move_Valor_MouseUp(sender As Object, e As MouseEventArgs)
If Bpersonaliza = False Then Exit Sub
If e.Button = Windows.Forms.MouseButtons.Right Then
Dim x, y As Integer
x = MousePosition.X
y = MousePosition.Y
LBL_Move_Valor.Location = New Point(x, y)
Me.Refresh()
End If

End Sub

consigo capturar a posição do mouse
mais quando aplico no componente
parasse que os valores de posição do mouse e do componente são diferentes
porque o componente acaba indo para um lugar nada haver da tela

alguem tem alguma dica?
KERPLUNK 30/09/2022 11:48:27
#500525
Resposta escolhida
Posição do mouse(MousePosition) é a posição do cursor do mouse na tela como um todo. Se voce quiser algo mais preciso, vai ter que fazer o calculo relativo ao form. Para isso, vai ter que levar em conta a posição do form na tela, a largura e altura além da posição do cursor em si. O que sugiro nesse caso(e até vai ficar mais organizado) é o uso dos controles Dock.
MFLAVIO 14/10/2022 10:52:55
#500579
Citação:

:
Posição do mouse(MousePosition) é a posição do cursor do mouse na tela como um todo. Se voce quiser algo mais preciso, vai ter que fazer o calculo relativo ao form. Para isso, vai ter que levar em conta a posição do form na tela, a largura e altura além da posição do cursor em si. O que sugiro nesse caso(e até vai ficar mais organizado) é o uso dos controles Dock.



Sim mais o DOCK não fixaria o componente em um determinado local ?
o que estou tentando fazer e deixar que o usuário mova (personalize alguns componentes da tela)
KERPLUNK 14/10/2022 13:07:17
#500585
Não necessariamente.

Sugiro que de uma olhadinha no componente "TableLayoutPanel", ele é bem versátil e fácil de trabalhar.
KERPLUNK 14/10/2022 13:13:04
#500587
Nesse video da pra ter uma ideia
MFLAVIO 30/08/2024 15:03:27
#503531
obrigado
Tópico encerrado , respostas não são mais permitidas