Delphi中隐藏窗体的标题栏,相信大家都会说是一个件十分容易的事情,只需要设置BorderStyle的属性为bsNone就可以了,不过这种设置方法不但去掉了窗体的标题栏,而且也去掉了窗体的3D边框,这样就显得不好看了,那么请大家试试下面的方法吧。 procedure TForm1.FormCreate(Sender: TObject); begin setwindowlong(form1.Handle,gwl_style,getwindowlong(handle,gwl_style) and not ws_caption); height:=clientheight;//隐藏标题栏 end;
2.在标题栏中显示文字标题 要在窗体的标题栏中显示文字信息,可以先获取此窗体的句柄,然后使用画布(Canvas)在此窗体的标题栏中绘制出文字,根据需要可以对文字的字体大小和颜色进行设置。 procedure TForm1.Button1Click(Sender: TObject); var dc:hdc; cvs:tcanvas; begin dc:=getwindowdc(handle);//取得窗体的句柄 cvs:=tcanvas.Create; cvs.Handle:=dc; cvs.Font.Size:=11;//设置字体大小 cvs.Brush.Color:=rgb(222,222,9);//背景颜色 cvs.TextOut(100,8,'标题栏文字');//绘制文字 releasedc(handle,dc);//释放句柄 end;
3.在任务栏中隐藏窗体的图标 在Windows中运行程序时,往往此程序的图标都会出现在任务栏中,但也有一些特殊的程序禁止了这种做法,如一些监控程序等,其实要实现这种效果也有好多种方法,下面是其中的一种。 procedure TForm1.FormCreate(Sender: TObject); begin showwindow(application.handle,sw_hide); //隐藏图标 setwindowlong(application.Handle,gwl_exstyle, getwindowlong(application.Handle,gwl_exstyle) or ws_ex_toolwindow and not ws_ex_appwindow); //设定窗体在状态栏处不可见状态 end;
1.隐藏窗体的标题栏 在Delphi中隐藏窗体的标题栏,相信大家都会说是一个件十分容易的事情,只需要设置BorderStyle的属性为bsNone就可以了,不过这种设置方法不但去掉了窗体的标题栏,而且也去掉了窗体的3D边框,这样就显得不好看了,那么请大家试试下面的方法吧。 procedure TForm1.FormCreate(Sender: TObject); begin setwindowlong(form1.Handle,gwl_style,getwindowlong(handle,gwl_style) and not ws_caption); height:=clientheight;//隐藏标题栏 end;
2.在标题栏中显示文字标题 要在窗体的标题栏中显示文字信息,可以先获取此窗体的句柄,然后使用画布(Canvas)在此窗体的标题栏中绘制出文字,根据需要可以对文字的字体大小和颜色进行设置。 procedure TForm1.Button1Click(Sender: TObject); var dc:hdc; cvs:tcanvas; begin dc:=getwindowdc(handle);//取得窗体的句柄 cvs:=tcanvas.Create; cvs.Handle:=dc; cvs.Font.Size:=11;//设置字体大小 cvs.Brush.Color:=rgb(222,222,9);//背景颜色 cvs.TextOut(100,8,'标题栏文字');//绘制文字 releasedc(handle,dc);//释放句柄 end;
3.在任务栏中隐藏窗体的图标 在Windows中运行程序时,往往此程序的图标都会出现在任务栏中,但也有一些特殊的程序禁止了这种做法,如一些监控程序等,其实要实现这种效果也有好多种方法,下面是其中的一种。 procedure TForm1.FormCreate(Sender: TObject); begin showwindow(application.handle,sw_hide); //隐藏图标 setwindowlong(application.Handle,gwl_exstyle, getwindowlong(application.Handle,gwl_exstyle) or ws_ex_toolwindow and not ws_ex_appwindow); //设定窗体在状态栏处不可见状态 end;
|
请发表评论