超级游侠儿 发表于 2009-9-13 06:47

【求助】如何用代码实现自动隐藏系统任务栏

如何用代码实现自动隐藏系统任务栏,也就是用代码实现在自动隐藏任务栏这项上打勾和取消打勾。

能这样的话配合快捷键使用来控制系统任务栏的出现和隐藏,比windows的自动隐藏会方便很多。以免任务栏时上时下的误操作。

100730088 发表于 2009-9-13 07:47

还真不知道……也不习惯它隐藏……

zhouzm 发表于 2009-9-13 09:14

楼主你用什么操作系统?

zhouzm 发表于 2009-9-13 09:48

如果是XP或2000,下载这个软件就可以实现你的要求,如果是Vista或Win7,很不幸,可以实现效果,但任务栏的空间不会释放。

软件原站点:http://rocketdock.com/addon/docklets/6728

我自己用程序(Delphi)试了一下,也是同样的效果。
代码如下:
procedure TForm2.Button1Click(Sender: TObject);
Var
hWnd : Integer;
hWndOrb: Integer;
begin
hWnd := FindWindow('Shell_TrayWnd', '');
If hWnd <> 0 then
   ShowWindow(hWnd, SW_HIDE);
hWndOrb := FindWindowEx(0,0,Pchar($C017),'开始');
if hWndOrb <> 0 then
   ShowWindow(hWndOrb, SW_HIDE);

end;

procedure TForm2.Button2Click(Sender: TObject);
Var
hWnd : Integer;
hWndOrb: Integer;
begin
hWnd := FindWindow('Shell_TrayWnd', '');
If hWnd <> 0 then
   ShowWindow(hWnd, SW_SHOW);
hWndOrb := FindWindowEx(0,0,Pchar($C017),'开始');
if hWndOrb <> 0 then
   ShowWindow(hWndOrb, SW_SHOW);
end;

我怀疑Vista或Win7的任务栏由三个窗口句柄组成,上面的代码只找到了2个,第三个窗口不可见但占着位置,第三个不知道类名或窗口名无法捕捉到。

超级游侠儿 发表于 2009-9-13 17:24

顶一下!才一早上,这帖子沉得太快了。
谢谢zhouzm,我现在用的是win7
也就是因为用的是win7,看到win7的taskbar比较炫才想到的,现在我全部用strokeit,已经基本很少会用开始去点程序。昨天用了个程序在win7下只能实现在下侧边栏按win键隐藏,但是到上面的时候就不行,不是很理想。我觉得平时软件的工具栏基本都集中在上部,把系统的工具栏移动到上面,这样鼠标的操作基本都可以集中在屏幕的上部,就不用上下跑了。唯一觉得就是微软的自动隐藏一不小心碰一下它就出来了。我把我下的那个工具也发上来

超级游侠儿 发表于 2009-9-13 18:25

^v^ 顶一下!

wshw 发表于 2009-9-13 18:28

这个东西也能自动隐藏吗?

超级游侠儿 发表于 2009-9-13 20:18

当然啊!

超级游侠儿 发表于 2009-11-25 20:10

:) :) :) :)

超级游侠儿 发表于 2010-8-4 03:17

再顶一下,看看有没有人能解决

蓝色水滴51NB 发表于 2010-8-6 09:45

不错 先占个位先!留着以后用!

超级游侠儿 发表于 2010-8-12 15:31

^^? ^^? ^^? ^^? ^^?

brqtpt007 发表于 2010-8-13 11:31

这个我要踩一脚/....有想法

超级游侠儿 发表于 2010-8-13 14:08

:) :) :) :)
页: [1]
查看完整版本: 【求助】如何用代码实现自动隐藏系统任务栏