如何用另外一个窗口替代任务栏上的时间显示?(200分)

  • 主题发起人 主题发起人 深海
  • 开始时间 开始时间

深海

Unregistered / Unconfirmed
GUEST, unregistred user!
如何用另外一个窗口或者窗口中的static text、label之类的替代任务栏上的时间显示?
显示的位置要在原来任务栏显示时间的那个位置
而且显示的区域大小应该是可以随意变化的
 
代码如下,可是就是不能替代任务栏里时间的那块区域,大虾们帮看看 ……
procedure TForm1.Button1Click(Sender: TObject);
var
wnd:thandle;
recttmp:TRect;
begin
wnd:=findwindow('Shell_TrayWnd',nil);
wnd:=findwindowex(wnd,0,'TrayNotifyWnd',nil);
wnd:=findwindowex(wnd,0,'TrayClockWClass',nil);
GetWindowRect(wnd,recttmp);
form1.Height := recttmp.Bottom - recttmp.Top;
form1.Width := recttmp.Right - recttmp.Left;
form1.Label1.Left := 0;
form1.label1.Top := 0;
windows.SetParent(form1.Handle,wnd);
windows.SetWindowPos(form1.Handle,HWND_TOPMOST,0,0,0,0,3);

end;
 
建议隐藏任务栏再显示你的窗体!
 
不行
好像并不是如此简单,要用到钩子之类的
 
有谁知道啊?
大虾跳出来指点一下啊
VB用类似的代码是可以实现的
改成Delphi的代码错在什么地方呢?
 
后退
顶部