如何切换 Windows 任务栏的自动隐藏状态

如何切换 Windows 任务栏的自动隐藏状态

我在桌面上使用 Windows 8。目前我必须将鼠标移到任务栏上,右键单击,单击属性,单击自动隐藏任务栏,然后单击确定。如果你想在一天中多次切换此状态,这真的很麻烦。事实上,这是行不通的,所以它默认保持开启状态,并在我不需要它时浪费了大量的屏幕空间。

有没有更好的办法?

(如果有帮助,我会使用 Autohotkey。)

答案1

这是一个自动热键脚本将Win+b变成切换任务栏自动隐藏设置的热键:

VarSetCapacity(APPBARDATA, A_PtrSize=4 ? 36:48)

#b::
   NumPut(DllCall("Shell32\SHAppBarMessage", "UInt", 4 ; ABM_GETSTATE
                                           , "Ptr", &APPBARDATA
                                           , "Int")
 ? 2:1, APPBARDATA, A_PtrSize=4 ? 32:40) ; 2 - ABS_ALWAYSONTOP, 1 - ABS_AUTOHIDE
 , DllCall("Shell32\SHAppBarMessage", "UInt", 10 ; ABM_SETSTATE
                                    , "Ptr", &APPBARDATA)
   KeyWait, % A_ThisHotkey
   Return

如果你希望使用与Win+不同的键或组合键b,请将#b第 3 行中双冒号前的 更改为你想要的任何热键(使用自动热键请参阅文档。

答案2

我发现了一个名为“任务栏控制”的程序,它可以让您设置任务栏自动隐藏切换键。

任务栏控制

http://www.thefreewindows.com/3252/hide-completely-the-windows-taskbar-using-a-hotkey-and-unhide-it-with-taskbar-control/

注意:如果您希望当前窗口自动填充空间,请确保下载“任务栏自动隐藏控制”版本。

答案3

要从 cmd 提示符或 .cmd 或 .bat 文件中自动隐藏任务栏:

Windows 7(StuckRects2)

powershell -command "&{$p='HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects2';$v=(Get-ItemProperty -Path $p).Settings;$v[8]=3;&Set-ItemProperty -Path $p -Name Settings -Value $v;&Stop-Process -f -ProcessName explorer}"

Windows 10(StuckRects3)

powershell -command "&{$p='HKCU:SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\StuckRects3';$v=(Get-ItemProperty -Path $p).Settings;$v[8]=3;&Set-ItemProperty -Path $p -Name Settings -Value $v;&Stop-Process -f -ProcessName explorer}"

解释

存储此值的注册表项还存储了许多其他设置。由于我们只想更改$v[8]该注册表设置的位置 9(在 cmd 中),因此我们需要保留其他设置。

通常从 cmd 开始,使用reg add命令修改注册表就足够了,但我们使用 powershell,因为它可以轻松保留存储在同一注册表项下的其他设置。

Explorer 也需要重新启动才能使更改生效。我们使用这个选项是Stop-Process因为 Windows 会在 Explorer 停止时自动重新启动它。

注意:将上述命令更改$v[8]=3$v[8]=2可撤消此更改(如果您希望任务栏始终可见)。

答案4

我想要一个可以完成 AHK 脚本基本功能的程序,但又不想为此安装 AHK,也不希望有其他后台进程监听热键,所以最后做了这个切换任务栏自动隐藏的工具。我对在最大化窗口切换时任务栏的行为很挑剔,所以现有的工具都不能让我满意。

相关内容