Delphi 窗体拖动,无边框,透明的设置

1、使Form没有标题栏和边框,只需要设置BorderStyle:=bsNode;

2、使Form透明,即只显示控件,假设Form尺寸:300*400,控件尺寸:200*200;

a、procedure TForm1.FormCreate(Sender: TObject);

  begin
    BorderStyle := bsNone;
    Brush.Style := bsClear;
  end;

  只是使Form透明了,但所占据的空间还在,即点击Form的透明区域,其他应用获取不到焦点,鼠标其实还在From上。

b、设置Form的Color和TransparentColorValue属性值相同,并且使TransparentColor值为True。

  该方法可以使Form真正的透明,即使点击Form的透明区域,其他的应用也可以获得焦点,就好像透明区域真的不存在一样。

3、设置窗体拖动,并非只有将鼠标放到标题栏才可以。

procedure TLoginForm.Panel1MouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer);
begin

//以下两句,缺一不可。
ReleaseCapture;
Perform(WM_SYSCOMMAND,$f012,0);
end;

posted @ 2014-12-03 19:57  弹指间幸福5  阅读(1247)  评论(0编辑  收藏  举报