Al programar, a veces, con el propósito de la necesidad, el Borderstyle de la forma se establecerá en Bsnone, es decir, la forma sin título. Pero de esta manera, porque sin la barra de título, no puedes arrastrar el formulario. De hecho, solo necesitamos usar el siguiente método para arrastrar suavemente el formulario.
Agregado al evento Onmousedown
Oldx: = x;
Viejo: = u;
Agregado al evento OnmouseMove
Form1.left: = form1.left+xdeDX;
Form1.top:=Form1.Top+y-Oldy;
## 1 La creación de código es la siguiente:
Unidad Unidad1;
interfaz
usos
Windows, mensajes, sysutils, clases, gráficos, controles, formularios, diálogos;
tipo
TForm1 = class (tForm)
procedimiento FormMousEdown (remitente: tobject; botón: tmouseButton;
Cambio: tshiftstate; x, y, entero);
procedimiento FormMouseMove (remitente: tobject; botón: tmouseButton;
Cambio: tshiftstate; x, y, entero);
Privado
{Declaraciones privadas}
público
Declaraciones privadas}
fin;
varilla
Form1: tform1;
Oldx, Oldy: entero;
Implementación
$ R *.dfm}
Procedimiento tForm1.FormMousEdown (remitente: tobject; botón: tMouseButton;
Cambio: tshiftstate; x, y: entero);
Comenzar
Oldx: = x;
Viejo: = y;
fin;
Procedimiento TForm1.FormMousEmove (remitente: tobject; botón: TMouseButton
Cambio: tshiftstate; x,
Y: entero);
Comenzar
Si ssleft en cambio, entonces // presione el botón del mouse izquierdo
Comenzar
Form1.left: = form1.left+xdeDX;
Form1.top:=Form1.Top+y-Oldy;
fin;
fin;
fin.
El Código de Chemos fue probado y aprobado en Delphi5.0 y Win98 SE.