屏蔽任务栏:
   ShowWindow(FindWindow('Shell_TrayWnd',nil ), SW_HIDE);
恢复显示:
     ShowWindow(FindWindow('Shell_TrayWnd',nil ), SW_SHOW);
please try!

解决方案 »

  1.   

    我有一个实际的例子是:获得是否自动隐藏
    function IsTaskbarAutoHideOn : Boolean;
    var
      ABData : TAppBarData;
    begin
      ABData.cbSize := SizeOf (ABData);
      result := (SHAppBarMessage (ABM_GETSTATE, ABData) and ABS_AUTOHIDE) > 0
    end;procedure Tfrm_Main.Button31Click(Sender: TObject);
    begin
      if IsTaskbarAutoHideOn then
      begin
      showmessage('任务栏是自动隐藏的哦!');
      end  else
      showmessage('任务栏不是自动隐藏的哦!');
    end;但是设置的我没有做过
    应该是采取SHAppBarMessage(ABM_SETAUTOHIDEBAR, ABData);方式
    注意先填充ABData的cbSize/hWnd/uEdge/lParam/
      

  2.   

    lParam为true是自动隐藏,为false取消xixi~~没有做过,暂时没有delphi,无法实践
      

  3.   

    用ShAPPBarMessage
    ABM_GETSTATE获得状态,ABM_SETAUTOHIDEBAR设置
    eg;//记得吧ShellAPI包含进来var
     pabd:TAppBarData;
     SysTrayHandle:THandle;
     rValue:Integer;
    begin
     SysTrayHandle:=FindWindow('Shell_TrayWnd',nil );
     with pabd do
     Begin
      cbSize:=SizeOf(pabd);
      hWnd:=SysTrayHandle;
      uCallbackMessage:=0;
      uEdge:=ABE_BOTTOM;
      lParam:=1;//0 means register
     End;
     rValue:=SHAppBarMessage(ABM_GETSTATE,pabd);
     ShowMessage('Status='+IntToStr(rValue));
     //2 means normal,3 means autohideend;
      

  4.   

    用ABM_SETAUTOHIDEBAR设置任务栏的“自动隐藏”属性,好象是不起作用的。
    我用C++ builder试过,Delphi我想也是一样。请问有哪一位试成功过的呢?