• 博客园logo
  • 会员
  • 周边
  • 众包
  • 新闻
  • 博问
  • 闪存
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录
小强强
You never know until you try!
博客园    首页    新随笔    联系   管理    订阅  订阅

隐藏标题栏

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;

posted @ 2008-09-29 21:22  强强  阅读(1833)  评论(0)    收藏  举报
刷新页面返回顶部
博客园  ©  2004-2025
浙公网安备 33010602011771号 浙ICP备2021040463号-3