导航

[Delphi]让窗体产生磁性吸附效果

Posted on 2006-02-15 15:30  xujh  阅读(1610)  评论(0编辑  收藏  举报
代码很简单
type
  TfrmMain = class(TForm)
       .
       .
   protected
      procedure WndProc(var Message: TMessage);override;
  end;
  implementation
  {$R *.dfm}
  procedure TfrmMain.WndProc(var Message: TMessage);
  var
      pos:PWINDOWPOS;
  begin
      case Message.Msg of
         WM_WINDOWPOSCHANGING:begin
              pos := PWINDOWPOS(Message.LParam);
              if(pos^.y<20) then
                  pos^.y := 0;
              if(pos^.x>1004-Width)then
                  pos^.x := 1024-Width-3;
         end;
    end;
    inherited WndProc(Message);
  end;