Club Delphi  
    Paypal   FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > API de Windows
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

 
 
Herramientas Buscar en Tema Desplegado
  #38  
Antiguo 08-04-2013
Avatar de escafandra
[escafandra] escafandra is offline
Miembro Premium
 
Registrado: nov 2007
Posts: 2.211
Poder: 22
escafandra Tiene un aura espectacularescafandra Tiene un aura espectacular
Bien. Pero fíjate que puedes calcular directamente el area cliente sin necesidad de calcular los anchos de borde y de la barra del caption:

Esta sería la modificación en el tratamiento de mensaje de WM_MOVING:
Código Delphi [-]
procedure TForm2.WMMoving(var Message: TWMMOVING);
var
  MainRect: TRect;
begin
  inherited;
  Windows.GetClientRect(Application.MainForm.Handle, MainRect);
  MapWindowPoints(Application.MainForm.Handle, 0, MainRect, 2);
  if Message.DragRect.Left < MainRect.Left then
  begin
    Message.DragRect.Left:= MainRect.Left;
    Message.DragRect.Right:= MainRect.Left + self.Width;
  end;
  if Message.DragRect.Top < MainRect.Top then
  begin
    Message.DragRect.Top:= MainRect.Top;
    Message.DragRect.Bottom:= MainRect.Top + self.Height;
  end;
  if Message.DragRect.Left > MainRect.Right - self.Width then
  begin
    Message.DragRect.Left:= MainRect.Right - self.Width;
    Message.DragRect.Right:= MainRect.Right;
  end;
  if Message.DragRect.Bottom > MainRect.Bottom then
  begin
    Message.DragRect.Top:= MainRect.Bottom - self.Height;
    Message.DragRect.Bottom:= MainRect.Bottom;
  end;
end;

Tratar el mensaje WM_MOVING es mejor que el OnMouseMove pues hace referencia al movimiento de la ventana, no del ratón, sea cual sea el mecanismo del movimiento (ratón o teclado) y se llama durante el movimiento continuo, no tras éste. Además es mas simple y rápido.


Saludos
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Crear un form fsMDIForm y varios forms hijos citlalliDgp Varios 11 07-12-2007 15:13:31
¿Quien es mi Form Padre? gabrio OOP 4 16-10-2007 20:33:06
Nodo padre sin hijos en TTreeView jorgesl OOP 3 10-04-2006 20:24:11
Formulario padre con hijos oscarsanta Conexión con bases de datos 2 31-01-2006 13:17:13
como puedo poner form hijos ronimaxh Varios 5 22-10-2003 22:55:23


La franja horaria es GMT +2. Ahora son las 13:02:01.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi