Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: ~~ en 18 Junio 2006, 11:18 am



Título: Mover un form con un label
Publicado por: ~~ en 18 Junio 2006, 11:18 am
Hola a todos

Veran he creado una calculadora y ahora estoy dandola una apariencia grafica un poco personalizada, pa q quede mas bonita ;D, y claro tambien quiero quitar la barra q tienen arriba todos los programas.

Hasta aqui lo ago todo sin problemas pero cuando sustitullo la barra por un label, logicamente, no puedo mover el formulario por la pantalla, se me queda hay parado.

Mi duda es ¿cómo puedo hacer para que ese label actue como si fuera la barra de windows? :huh:

Gracias de antemano por su ayuda.

Salu2


Título: Re: Mover un form con un label
Publicado por: karmany en 18 Junio 2006, 12:01 pm
Haz esto desde cero:
Crea un formulario, ponle borderstyle a 0(none)
Pon en el formulario un label: yo he puesto label1.
y pega este código:

Código:
Dim posx As Integer, posy As Integer, estado As Integer

Private Sub Label1_MouseDown(Button As Integer, Shift As Integer, X As Single, Y As Single)
posx = X
posy = Y
estado = 1
End Sub

Private Sub Label1_MouseMove(Button As Integer, Shift As Integer, X As Single, Y As Single)
If estado = 1 Then Form1.Move Form1.Left + X - posx, Form1.Top + Y - posy
End Sub

Private Sub Label1_MouseUp(Button As Integer, Shift As Integer, X As Single, Y As Single)
estado = 0
End Sub

estado=1 -> se ha pulsado el botón del mouse (mousedown)
estado=0 -> se ha soltado (mouseup)


Título: Re: Mover un form con un label
Publicado por: ~~ en 18 Junio 2006, 18:53 pm
Hola

Muchas gracias por tu ayuda, funciona perfectamente.

Un saludo