Einzelnen Beitrag anzeigen

Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.475 Beiträge
 
Delphi 12 Athens
 
#6

AW: Verhindern, das über eine Form "drüber-resized" wird

  Alt 14. Mai 2014, 10:25
So sollte es gehen (Die Message-Struktur für WM_SIZING entspricht der für WM_MOVING):

Delphi-Quellcode:
...
  protected
    procedure WMMoving(var Message: TWMMoving); message WM_MOVING;
    procedure WMSizing(var Message: TWMMoving); message WM_SIZING;
...

{ Das Form soll oben einen Rand von 100 lassen. }
procedure TForm300.WMMoving(var Message: TWMMoving);
var
  DY: Integer;
begin
  DY := 100 - Message.DragRect.Top;
  if DY > 0 then begin
    Message.DragRect.Top := 100;
    Message.DragRect.Bottom := Message.DragRect.Bottom + DY;
  end;
  inherited;
end;

procedure TForm300.WMSizing(var Message: TWMMoving);
begin
  if Message.DragRect.Top < 100 then begin
    Message.DragRect.Top := 100;
  end;
  inherited;
end;
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat