怎么实现象WINDOWS中任务栏自动隐藏功能?哪位大侠帮帮小妹吧(100分)

  • 主题发起人 主题发起人 mingmingtx
  • 开始时间 开始时间
M

mingmingtx

Unregistered / Unconfirmed
GUEST, unregistred user!
怎么实现象WINDOWS中任务栏自动隐藏功能?哪位大侠帮帮小妹吧
mingm13@263.net
 
procedure TForm1.Button1Click(Sender: TObject);
var
AHandle: THandle;
begin
AHandle := FindWindow('Shell_TrayWnd', nil);
ShowWindow(AHandle, SW_HIDE); //隐藏任务栏
end;

procedure TForm1.Button2Click(Sender: TObject);
var
AHandle: THandle;
begin
AHandle := FindWindow('Shell_TrayWnd', nil);
ShowWindow(AHandle, SW_RESTORE); //显示任务栏
end;
 
procedure TForm1.Timer1Timer(Sender: TObject);//用自动隐藏窗体举一个例子
var
cur:tpoint;rct:trect;
begin
if form1.top<5 then
begin
GetCursorPos(cur);//获得当前鼠标的位置
GetWindowRect(Handle,rct);//获得当前窗口的区域
if not PtInRect(rct,cur) then//当鼠标不在窗体内时隐藏窗体。
begin
form1.height:=3;
form1.Top:=0;
end
else
form1.height:=400;//显示窗口
end;
end;
 
const
WM_MIDASICON = WM_USER + 1;
procedure ModifyTrayIcon(Action:DWORD);//圖標加入窗口右下角
var
l_NIData : TNotifyIconData;
begin
try
With l_NIData do
begin
cbSize := Sizeof(TNotifyIconData);
uID := 0;
uFlags := NIF_MESSAGE or NIF_ICON or NIF_TIP;
Wnd := Handle;
uCallBackMessage := WM_MIDASICON;
hIcon := Application.Icon.Handle;
StrPCopy(szTip,Application.Title);
end;
Shell_NotifyIcon(Action,@l_NIData);
except;
end;
end;
 
上面各位朋友的办法你试过了吗?
 
接受答案了.
 

Similar threads

S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
S
回复
0
查看
2K
SUNSTONE的Delphi笔记
S
D
回复
0
查看
2K
DelphiTeacher的专栏
D
后退
顶部