当前位置:编程文档 >> DELPHI >> 实现可缩放的无标题窗体
首页

实现可缩放的无标题窗体

所属类别:DELPHI
推荐指数:★★☆
文档人气:67
本周人气:1
发布日期:2007-5-11

怎样可以不要Form的标题栏和边界但可以保留改变Form的大小的功能:

uses

Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,

StdCtrls;


type

TForm1 = class(TForm)

private

procedure WmNCHitTest(var Msg : TWMNCHitTest); message WM_NCHITTEST;


{ Private declarations }

public

{ Public declarations }

end;


var

Form1: TForm1;


implementation


{$R *.DFM}


procedure TForm1.WmNCHitTest(var Msg: TWMNCHitTest);

const v=10; //border width

var p:TPoint;

begin

p:=Point(Msg.XPos,Msg.YPos);

p:=ScreenToClient(p);

if PtInRect(Rect(0,0,v,v),p) then

Msg.Result:=HTTOPLEFT

else if PtInRect(Rect(Width-v,Height-v,Width,Height),p) then

Msg.Result:=HTBOTTOMRIGHT

else if PtInRect(Rect(Width-v,0,Width,v),p) then

Msg.Result:=HTTOPRIGHT

else if PtInRect(Rect(0,Height-v,v,Height),p) then

Msg.Result:=HTBOTTOMLEFT

else if PtInRect(Rect(v,0,Width-v,v),p) then

Msg.Result:=HTTOP

else if PtInRect(Rect(0,v,v,Height-v),p) then

Msg.Result:=HTLEFT

else if PtInRect(Rect(Width-v,v,Width,Height-v),p) then

Msg.Result:=HTRIGHT

else if PtInRect(Rect(v,Height-v,Width-v,Height),p) then

Msg.Result:=HTBOTTOM;

Inherited;

end;


end.

文档说明:

     

相关文档


读取评论列表……