请问各位老大:  将form1窗口的BorderStyle属性设定为bsNone,无边框模式,怎么才可以随意的拖动窗口?

解决方案 »

  1.   

    procedure TForm1.FormMouseDown(Sender: TObject; Button: TMouseButton; 
    Shift: TShiftState; X, Y: Integer); 
    begin 
    if (ssleft in Shift) then 
    begin 
    ReleaseCapture; Perform(WM_syscommand, $F012, 0); 
    end; 
    end; 
    end.
      

  2.   

    unit Unit1;interfaceuses
      Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
      Dialogs;type
      TForm1 = class(TForm)
      private
        { Private declarations }
         procedure   wmnchittest(var   msg:twmnchittest);message   wm_nchittest;
      public
        { Public declarations }
      end;var
      Form1: TForm1;
    implementation{$R *.dfm}procedure   TForm1.wmnchittest(var   msg:twmnchittest);
      begin
      inherited;
      if   (htclient=msg.result)   then   msg.result:=htcaption;
      end;
    end.
      

  3.   

    procedure TForm1.FormMouseMove(Sender: TObject; Shift: TShiftState; X,
      Y: Integer);
    begin
      inherited;
      ReleaseCapture;
      SendMessage(Handle, WM_SYSCOMMAND, SC_MOVE + HTCAPTION, 0);
    end;绝对有效