Windows, come visualizzare la barra del menu start alla sola pressione del tasto Win

Ci sono moltissimi geek che amano avere lo schermo del proprio amato computer sempre libero, nascondendo anche tutti quegli elementi che sarebbero da considerarsi “indispensabili” come la barra del menu start di Windows.

Certo, Windows ha già una funzione integrata che permette di visualizzare la taskbar al solo passaggio del cursore del mouse nella parte bassa dello schermo (o in qualunque altra area sia stata piazzata la barra del menu start), ma va ammesso che non è il massimo: alzi infatti la mano chi, dopo aver applicato la scomparsa automatica, non si è visto ricomparire la taskbar in un centinaio di occasioni non volute, nelle quali si va per sbaglio con il cursore del mouse sull’area interessata.

Ed allora perché non porre rimedio a tutto ciò e visualizzare la barra del menu start alla sola pressione del tasto Win? Basta davvero poco:

  1. Scaricare ed installare AutoHotkey
  2. Aprire il blocco note ed incollarvi quanto segue:

  3. ;PushToShow.ahk
    ; Only shows the taskbar when the Windows key is pushed
    ;Skrommel @ 2008

    #SingleInstance,Force
    SetWinDelay,0
    DetectHiddenWindows,On
    OnExit,EXIT

    WinGet,active,Id,ahk_class Progman
    WinGet,taskbar,Id,ahk_class Shell_TrayWnd
    Gosub,AUTOHIDE
    Gosub,HIDE
    Gosub,WATCH
    Return

    ~LWin::
    SetTimer,HIDE,Off
    WinSet,Region,,ahk_id %taskbar%
    WinActivate,ahk_class Shell_TrayWnd
    Return

    ~LWin Up::
    SetTimer,HIDE,100
    Return

    HIDE:
    MouseGetPos,,,mwin
    If (mwin=taskbar)
    Return
    If (WinExist(“A”)=taskbar)
    WinActivate,ahk_id %active%

    SHRINK:
    WinGetPos,wx,wy,ww,wh,ahk_id %taskbar%
    ww-=2
    wh-=2
    WinSet,Region,2-2 W%ww% H%wh%,ahk_id %taskbar%
    SetTimer,HIDE,Off
    Return

    EXIT:
    WinSet,Region,,ahk_id %taskbar%
    Gosub,NORMAL
    ExitApp

    WATCH: ;Stolen from SKAN at http://www.autohotkey.com/forum/topic24214.html
    Gui,+LastFound
    hWnd:=WinExist()
    DllCall(“RegisterShellHookWindow”,UInt,hWnd)
    MsgNum:=DllCall(“RegisterWindowMessage”,Str,”SHELLHOOK”)
    OnMessage(MsgNum,”ShellMessage”)
    Return

    ShellMessage(wParam,lParam)
    {
    Global active
    If (wParam=4) ;HSHELL_WINDOWACTIVATED
    {
    WinGetClass,class,ahk_id %lParam%
    If (class“Shell_TrayWnd”)
    active:=lParam
    If (lParam=0)
    WinGet,active,Id,ahk_class Progman
    }
    }

    AUTOHIDE: ;Stolen from SKAN at http://www.autohotkey.com/forum/topic26107.html
    ABM_SETSTATE := 10
    ABS_NORMAL := 0x0
    ABS_AUTOHIDE := 0x1
    ABS_ALWAYSONTOP := 0x2
    VarSetCapacity(APPBARDATA,36,0)
    Off:=NumPut(36,APPBARDATA)
    Off:=NumPut(WinExist(“ahk_class Shell_TrayWnd”),Off+0)

    NumPut(ABS_AUTOHIDE|ABS_ALWAYSONTOP, Off+24)
    DllCall(“Shell32.dll\SHAppBarMessage”,UInt,ABM_SETSTATE,UInt,&APPBARDATA)
    Return

    NORMAL:
    NumPut(ABS_ALWAYSONTOP,Off+24)
    DllCall(“Shell32.dll\SHAppBarMessage”,UInt,ABM_SETSTATE,UInt,&APPBARDATA)
    Return

  4. Salvare il file come [nome a scelta].ahk
  5. Aprire il file appena creato
  6. Premere il tasto Win della tastiera per visualizzare/nascondere la taskbar

Ed ecco fatto, adesso sarà possibile visualizzare la barra del menu start alla sola pressione del tasto Win. Per disabilitare lo script basta fare click destro sull’icona di AutoHotkey e scegliere l’apposita opzione dal menu.

Fonte: gHacks