Delphi7 实现窗体全屏方法

设置要全屏的窗体的ALign 属性为ALcLient ,此法最快。当然对我来说,我并不知道这个,所以走了远路,等后来在实现窗体禁止移动的时候

才想到了这里,汗。注意:这种全屏方式不会挡了系统的任务栏。。。。同时可以防止窗体移动,

方法二:

用代码控制。

在窗体的创建事件中,

此方法运行后窗体也可以移动。

影响美观。应该再加入禁止窗体移动的代码)写入

var

TrayWnd:

HWnd;

//

任务栏句柄

Rec : TRect;

begin

TrayWnd := FindWindow('Shell_TrayWnd',nil);//

得到任务栏句柄

GetWindowRect(TrayWnd, Rec);

//

获取任务栏尺寸

mainfm .Left :=0;

mainfm .top:=0;

mainfm .Width :=Screen .Width

mainfm .Height :=Screen .Height-(rec.Bottom- rec.Top)

end;

这样也实现了 全屏不挡了任务栏。 方法三:(全屏要挡住任务栏)

设置窗体的windowState 为wsMaxinized ,汗。。

再来一种

procedure TForm1.Button1Click(Sender: TObject);

begin

//覆盖任务栏

Self.BorderStyle := bsNone;

Self.Left := 0;

Self.Top := 0;

Self.Width := Screen.Width;

Self.Height := Screen.Height;

end;

procedure TForm1.Button2Click(Sender: TObject);

begin

//保留任务栏

Self.BorderStyle := bsNone;

Self.Left := Screen.WorkAreaLeft;

Self.Top := screen.WorkAreaTop;

Self.Width := Screen.WorkAreaWidth;

Self.Height := Screen.WorkAreaHeight;

end;