Jak przełączać stan automatycznego ukrywania paska zadań systemu Windows

10

Używam Windows 8 na pulpicie. Obecnie muszę przesunąć kursor myszy nad pasek zadań, kliknąć prawym przyciskiem myszy, kliknąć właściwości, kliknąć automatyczne ukrywanie paska zadań, a następnie kliknąć OK. To prawdziwy ból, jeśli chcesz przełączać ten status między włączaniem i wyłączaniem kilka razy w ciągu dnia. W rzeczywistości jest to niewykonalne, więc domyślnie pozostaje włączone i marnuje wiele nieruchomości ekranowych, gdy nie są potrzebne.

Czy jest lepszy sposób?

(Jeśli to pomaga, używam Autohotkey.)

Kit Johnson
źródło
Zobacz ten post
Portland Runner,
@PortlandRunner Dzięki za wskazówkę. Już to widziałem, ale próbuje zrobić coś innego, czyli pokazać ukryty pasek zadań. Chcę zmienić status automatycznego ukrywania paska zadań, z „do auto-hide” na „nie auto-hide” i ponownie.
Kit Johnson,

Odpowiedzi:

15

Oto skrypt AutoHotKey, aby rozwiązać problem:

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

Space::
   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
Szary
źródło
Dziękuję bardzo za opublikowanie tego. Czy to po prostu ukrywa pasek zadań i pozostawia inne okna takimi, jakie są, czy też automatycznie wypełnią przestrzeń zajmowaną przez pasek zadań? Problem z wieloma rozwiązaniami polega na tym, że pasek zadań ukrywa się, ale inne okna nie wypełniają przestrzeni.
Kit Johnson,
1
To działa dla mnie (w7 x64). Wszystkie okna wypełniają przestrzeń używaną przez pasek zadań.
Grey,
3
Pamiętaj, że ten skrypt używa spacji jako klawisza skrótu (jeśli zastanawiasz się, jak przełączać ukrywanie / pokazywanie), co nie jest idealne. Zamieniłem go na #b (win + b, b dla paska).
alexeit
1
Znaleziono to przez google. Wydaje się, że nie działa w systemie Windows 10: zawsze zmienia się na „zawsze pokaż”, ale drugi kierunek („automatyczne ukrywanie”) nie działa.
srs
1
Działa idealnie w systemie Windows 10. Pamiętaj tylko, aby dodać VarSetCapacity(APPBARDATA, A_PtrSize=4 ? 36:48)wiersz u góry skryptu (przed klawiszami skrótu).
Shayan
3

Wypróbuj ten mały program, który znalazłem jakiś czas temu. „To niesamowite. Przełącza pasek zadań pokazywany lub ukryty za pomocą Alt-T i można go ustawić tak, aby uruchamiał się również w systemie Windows.

http://www.aviassin.com/taskbareliminator

Nazywa się Eliminator paska zadań i działa zarówno dla Win7, jak i Win 8

Ethan Brouwer
źródło
Tak, to idealna mała aplikacja. Właśnie tego szukałem!
Kit Johnson
Jestem zmuszony zaakceptować inną odpowiedź, która używa AutoHotKey, ponieważ nie wymaga ona instalowania więcej oprogramowania niż ja już używam. Jestem jednak pewien, że twoja odpowiedź będzie odpowiednia dla kogoś innego.
Kit Johnson
3

Znalazłem program o nazwie „Kontrola paska zadań”, który pozwala ustawić klawisz przełączania automatycznego ukrywania paska zadań.

Kontrola paska zadań

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

Uwaga: Pamiętaj, aby pobrać wersję „AutoHide Control paska zadań”, jeśli chcesz, aby bieżące okno automatycznie wypełniało miejsce.

użytkownik312348
źródło
na stronie nie ma linku do pobrania. Myślę, że to zostało usunięte?
Shayan
Pobrałem
Shayan
2

Aby automatycznie ukryć pasek zadań w wierszu polecenia cmd lub w .cmd lub. plik nietoperza:

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}"

Wyjaśnienie

Klucz rejestru, który przechowuje tę wartość, przechowuje również szereg innych ustawień. Ponieważ chcemy tylko zmienić pozycję 9 ( $v[8]w cmd) tego ustawienia rejestru, musimy zachować pozostałe ustawienia.

Zwykle z cmd wystarczy użyć reg addpolecenia do modyfikacji rejestru, ale używamy programu PowerShell, ponieważ ułatwia to zachowanie innych ustawień przechowywanych w tym samym kluczu rejestru.

Należy także ponownie uruchomić Eksploratora, aby odebrać zmianę. Używamy, Stop-Processponieważ system Windows automatycznie ponownie uruchamia Eksploratora, gdy jest on zatrzymany.

Uwaga: zmień $v[8]=3na $v[8]=2w powyższych poleceniach, aby cofnąć tę zmianę (jeśli chcesz, aby pasek zadań był zawsze widoczny).

granat
źródło
Podoba mi się twoja odpowiedź. Nawet jeśli inne narzędzia mogą być lepsze / łatwiejsze, twoje wyjaśnienie było najbardziej interesujące.
Don King
1

„prawdziwe przełączanie paska zadań”

Skrypt AutoHotKey powyżej w najlepszej odpowiedzi działa dobrze. Na moim komputerze połączyłem to

http://www.itsamples.com/taskbar-hider.html

(v1.2)

Ta aplikacja do ukrywania paska zadań pozwala mi wybrać skrót do ukrycia paska zadań. Zmapowałem klawisz skrótu AutoHotKey na Win + A i Hider paska zadań na Win + Y. Więc teraz, kiedy naciskam Win + Y, Win + A pasek zadań przełącza się bez wyskakiwania ponownie, gdy przypadkowo dolny piksel; kiedy naciskam Win + Y, Win + A ponownie wraca i pozostaje tam bez względu na to, gdzie ustawię kursor myszy i jest po prostu świetny. Rozwiązanie z jednym kluczem byłoby jeszcze lepsze, chociaż dwa klawisze skrótu są tak blisko siebie, że jest to naprawdę łatwe do opanowania.

Może istnieje lepsze (jednoprzyciskowe) rozwiązanie wykorzystujące tylko AutoHotKey?

mbbmbbmm
źródło
1
nie działa z moim win7 64bit.
Edwin Yip,
Oczywiście możesz edytować skrypt AHK, aby emitować również drugie naciśnięcie klawisza.
Aaron Thoma,
1
Nie działa w systemie Windows 10
Shayan,
1

Nie mogłem zmusić skryptu AutoHotKey od Graya do pracy na Win 8.1, więc go stworzyłem. Umieść to w pliku .ahk

Wersja systemu Windows 8.1:

Run, %SystemRoot%\System32\rundll32.exe shell32.dll`,Options_RunDLL 1
WinWait, Taskbar and Navigation properties, 
IfWinNotActive, Taskbar and Navigation properties, , WinActivate, Taskbar and Navigation properties, 
WinWaitActive, Taskbar and Navigation properties, 
Send, {ALTDOWN}u{ALTUP}{ALTDOWN}a{ALTUP}{ESC}
Exit

Wersja systemu Windows 10 (testowana w wersji 10.0.17134.523 1/13/2019):

#NoEnv
#Warn  ; Enable warnings to assist with detecting common errors.
SendMode Input  ; Recommended for new scripts due to its superior speed and reliability.

Run ms-settings:taskbar
WinWait, Settings, 
WinWaitActive, Settings, , 3
if ErrorLevel
{
    MsgBox, WinWait timed out.
}

CoordMode, Pixel, Client 
WinGetPos, X, Y, Width, Height
;OutputDebug, Width Height %Width% %Height%

; Wait for Settings UI to load
Sleep 500

if (Width <= 735)
{
    Send {TAB}{TAB}{space}
}
else
{
    Send {TAB}{TAB}{TAB}{space}
}

;Close the settings UI
Sleep 150
Send !{F4}

Exit

(Może być konieczne dostosowanie czasu trwania snu, jeśli nie są one wystarczająco długie w systemie. Prawdopodobnie jest lepszy sposób na wykrycie, kiedy interfejs użytkownika załadował się poza snem, ale nie mogłem tego zrozumieć. kontrola pola tekstowego w interfejsie użytkownika. Próbowałem wykryć wzór koloru, ale użytkownik końcowy ma kontrolę nad schematem kolorów.)

Głaskanie pod brodę
źródło
Co robi ui co arobi Send, {ALTDOWN}u{ALTUP}{ALTDOWN}a{ALTUP}{ESC}Nie mogę znaleźć niczego w dokumentach.
Shayan
To nie działa dla mnie na Windows 10
Shayan
1
U i A to naciśnięcia klawiszy wysyłane do aplikacji, w szczególności alt-U i alt-A. Sprawdzę Win10 później.
Chuck,
0

Tak, możesz pobrać to wspaniałe narzędzie o nazwie „Ukryj pasek zadań”, które daje skrót „Ctrl + Esc” (domyślnie możesz to zmienić), aby ukryć / odkryć pasek zadań

Pobierz tutaj

http://www.thewindowsclub.com/hide-taskbar-windows-7-hotkey

Fahad Saleem
źródło
1
Dziękuję za tę odpowiedź. Pobrałem program. Niestety po naciśnięciu „Ctrl + Esc” ukrywa pasek zadań, ale pozostawia po prostu puste miejsce wielkości paska zadań na pulpicie. Maksymalizowane aplikacje nie zajmują tego miejsca (które jest teraz zmarnowanym miejscem). Kiedy korzystam z wbudowanej opcji systemu Windows, aplikacje automatycznie maksymalizują, aby wypełnić cały ekran. Teraz mam tylko czarny pasek w miejscu, gdzie kiedyś znajdował się pasek zadań, ale nie dostaję już więcej nieruchomości na ekranie.
Kit Johnson
To narzędzie jest tworzone za pomocą auto-klucza, a wszystko, co robi, ustawia przezroczystość Shell_TrayWnd na 0 (ukrywa)
Shayan