Barra delle applicazioni di Windows 7 come barra laterale, larghezza minima fissa


20

Può sembrare una domanda banale e inutile, ma mi infastidisce sempre di più. Se scegli "icone piccole" per la barra delle applicazioni in Windows 7 e la barra delle applicazioni è nella parte superiore o inferiore dello schermo, la barra delle applicazioni diventerà piuttosto piccola.

Schermata di una barra delle applicazioni orizzontale

Ma poiché ho un monitor widescreen, sono abituato ad avere la barra delle applicazioni sul lato dello schermo, poiché utilizza lo spazio in modo più efficiente. Ma non riesco a restringere la barra delle applicazioni di un certo livello e rimane piuttosto ampia.

Schermata di una barra delle applicazioni verticale

C'è forse una voce di registro che potrei impostare per ottenere la stessa larghezza sul lato dello schermo dell'altezza che sto ottenendo in basso o in alto?

(PS: il trucco di MinWidth non aiuta qui.)


2
Solo una nota, se blocchi la barra delle applicazioni, non mostrerà quei grip, il che sposta i pulsanti della finestra molto più vicino alla sfera.
Pensa

Risposte:


12

Una soluzione di lavoro perfetta sarebbe:

  • creare un file ThinTaskbar.bat
  • inserisci il seguente contenuto:

@echo off
echo ThinTaskbar
echo Please wait a few secconds...
net stop "UxSms"
net start "UxSms"

  • salva e chiudi
  • attiva le seguenti opzioni sulla barra delle applicazioni: blocca e nascondi automaticamente
  • eseguire script batch con privilegi di amministratore
  • fatto!

Ora puoi disabilitare l'autohide, se lo desideri. Lo script deve essere applicato dopo ogni riavvio.

Fonte: Youtube


Evviva una risposta funzionante!
Barfieldmv,

Ho appena trovato la tua risposta ed è stato molto utile. Dalla lettura altrove, se si aggiunge questo file .bat alla directory% AppData% \ Microsoft \ Windows \ Menu \ Programmi \ Avvio \, dovrebbe eseguire .bat all'avvio invece di doverlo fare manualmente.
WebDevNewbie,

Questo non funziona per me. Apparentemente non fa una sola cosa, ma cmd dice che si ferma e inizia con successo. Anche dal pannello Servizi. Qualche idea?
Carles Alcolea,

3

In realtà ho fatto un duplicato di questa domanda, e non è ancora stata risolta la barra delle applicazioni verticale su Windows Server 2008 troppo ampia

Ma posso indicarti questo link:

http://answers.microsoft.com/en-us/windows/forum/windows_7-desktop/when-vertical-cannot-make-taskbar-as-thin-as/9ecf0b1c-e66d-497c-8c2b-5ef3965e2b59

Fondamentalmente dice che le piccole icone sono praticamente più larghe di quanto appaiano (ma non più in alto) e che questo è di progettazione. Non è possibile modificare la larghezza della barra delle applicazioni al di sotto della larghezza virtuale delle icone.

La ragione per cui consente una "altezza" più piccola quando orizzontale è perché ogni icona ha ancora una larghezza ampia, quindi rimane facilmente in grado di raggiungere il bersaglio con la punta di un dito.

Forse qualcuno può usarlo per creare una soluzione:)


3

Ho una soluzione che sto usando in questo momento. Ho passato ore a scrivere questo codice e sono molto soddisfatto che funzioni perfettamente per me. Vai avanti e usalo se vuoi, credimi (drange17) se vuoi pubblicare questo codice online nei forum. A mia volta, vorrei accreditare a Lexikos il codice per ConsoleSend.

Innanzitutto, ho inserito un collegamento al prompt dei comandi chiamato "cmd.lnk" in C: \ Programmi. Vado alle proprietà di questa scorciatoia >> scheda scorciatoia >> avanzata >> abilita l'esecuzione come amministratore.

In secondo luogo, ho scaricato AutoHotkey e l'ho messo in esecuzione all'avvio (posiziona un collegamento ad AutoHotkey nella cartella Start Menu Startup), con il seguente codice (che sicuramente non è molto elegante, sono sicuro che qualcuno può fare di meglio, ma lo fa il compito di restringere la barra delle applicazioni verticale per me):

Sleep, 15000
SendInput {LWin Down}r{LWin Up}
IfWinExist, Run
    WinActivate
    Sleep, 500
    SendInput {Raw}RunDll32.exe shell32.dll,Options_RunDLL 1
    SendInput {Enter}
WinWait, Taskbar and Start Menu Properties
    SendInput {Tab}{Space}{Enter}
WinWaitClose
    Run C:\Program Files\cmd.lnk
WinWait, Administrator: cmd ahk_class ConsoleWindowClass
winwaitactive Administrator: cmd ahk_class ConsoleWindowClass
ConsoleSend("net stop uxsms", "ahk_class ConsoleWindowClass")
ConsoleSend("`r", "ahk_class ConsoleWindowClass")
Sleep, 3000
ConsoleSend("net start uxsms", "ahk_class ConsoleWindowClass")
ConsoleSend("`r", "ahk_class ConsoleWindowClass")
Sleep, 3000
ConsoleSend("exit", "ahk_class ConsoleWindowClass")
ConsoleSend("`r", "ahk_class ConsoleWindowClass")
WinWaitClose
SendInput {LWin Down}r{LWin Up}
IfWinExist, Run
    WinActivate
Sleep, 500
SendInput {Raw}RunDll32.exe shell32.dll,Options_RunDLL 1
SendInput {Enter}
WinWait, Taskbar and Start Menu Properties
SendInput {Tab}{Space}{Enter}
Run outlook.exe
ConsoleSend(text, WinTitle="", WinText="", ExcludeTitle="", ExcludeText="")
{
    WinGet, pid, PID, %WinTitle%, %WinText%, %ExcludeTitle%, %ExcludeText%
    if !pid
        return false, ErrorLevel:="window"
    if !DllCall("AttachConsole", "uint", pid)
        return false, ErrorLevel:="AttachConsole"
    hConIn := DllCall("CreateFile", "str", "CONIN$", "uint", 0xC0000000
                , "uint", 0x3, "uint", 0, "uint", 0x3, "uint", 0, "uint", 0)
    if hConIn = -1
        return false, ErrorLevel:="CreateFile"
    VarSetCapacity(ir, 24, 0)       ; ir := new INPUT_RECORD
    NumPut(1, ir, 0, "UShort")      ; ir.EventType := KEY_EVENT
    NumPut(1, ir, 8, "UShort")      ; ir.KeyEvent.wRepeatCount := 1
    Loop, Parse, text ; for each character in text
    {
        NumPut(Asc(A_LoopField), ir, 14, "UShort")
        NumPut(true, ir, 4, "Int")  ; ir.KeyEvent.bKeyDown := true
        gosub ConsoleSendWrite
        NumPut(false, ir, 4, "Int") ; ir.KeyEvent.bKeyDown := false
        gosub ConsoleSendWrite
        Sleep, 10
    }
    gosub ConsoleSendCleanup
    return true
    ConsoleSendWrite:
        if ! DllCall("WriteConsoleInput", "uint", hconin, "uint", &ir, "uint", 1, "uint*", 0)
        {
            gosub ConsoleSendCleanup
            return false, ErrorLevel:="WriteConsoleInput"
        }
    return
    ConsoleSendCleanup:
        if (hConIn!="" && hConIn!=-1)
            DllCall("CloseHandle", "uint", hConIn)
        DllCall("FreeConsole")
    return
}

Ecco la barra delle applicazioni verticale sottile risultante:

inserisci qui la descrizione dell'immagine


1
Sembra molto promettente, ma puoi aggiungere qualche commento e descrivere cosa stai facendo?
scigor

Non è corso per me. perché gestisci Outlook alla fine? fa parte della soluzione o volevi solo eseguire qualche app che crea una nuova finestra? Potrei auto hot key inviare alcune chiavi alla barra delle applicazioni, quindi ha aperto un cmd.exe ma non è stato digitato nulla, anche se sembra che questo script stia cercando di farlo. ho lasciato il mouse e la tastiera soli per un minuto per lasciare che sia finito. Nada. Qualche puntatore?
tgkprog,

2

Alcune persone affermano che questo comportamento è in base alla progettazione al fine di limitare lo spessore minimo per la funzionalità touch: si impedisce che la barra delle applicazioni diventi troppo piccola per essere utilizzata con la punta di un dito, quindi sul lato dello schermo manterrà questa dimensione minima.

Se possiedi un laptop, ho trovato questa soluzione temporanea:

All'accensione, la barra delle applicazioni appare verticalmente nella sua dimensione "larga" predefinita nella parte sinistra dello schermo. Per ridurre la larghezza della barra delle applicazioni, è sufficiente scollegare la fonte di alimentazione CA del laptop. Immediatamente la barra delle applicazioni viene ridimensionata (non funziona se la barra delle applicazioni non è impostata su "Nascondi automaticamente"). La nuova dimensione della barra delle applicazioni viene mantenuta "permanentemente" durante l'operazione di Windows 7. A questo punto posso anche disabilitare l'impostazione "Nascondi automaticamente" e la barra delle applicazioni mantiene comunque le dimensioni ridotte. Ovviamente ricollego l'alimentazione CA al laptop per mantenere carica la batteria. Dopo aver spento il mio laptop e dopo averlo riacceso per l'uso, eseguo lo stesso trucco con corrente alternata per ridimensionare nuovamente la barra delle applicazioni verticale. Non ho provato questo su altri laptop / pc quindi non

MODIFICARE

Potrei aver trovato una direzione che potresti seguire.

Innanzitutto, quando ho impostato il tema Windows su Classico, ho notato che il pulsante Start era ridotto in larghezza e che quindi consente di ridurre la larghezza della barra delle applicazioni a quella del pulsante Start. Potrebbe anche essere necessario disattivare l'orologio e la data.

Questo mi ha fatto pensare che il problema della larghezza sia causato dal pulsante Start stesso che è troppo largo. Ecco quindi alcuni link per personalizzare il pulsante Start:

Come modificare il testo del pulsante Start in Windows 7
Come modificare il pulsante Menu Start in Windows 7

Questa soluzione potrebbe o non potrebbe funzionare e potrebbe funzionare o meno con Aero o solo in modalità Classica.
In ogni caso: l'hacking felice!


sì, l'ho sentito anche io, e come puoi leggere dai commenti ai sagars "answear", puoi cambiare la dimensione temporale, ma se puoi farlo temporaralmente ci deve essere un trucco per farlo in modo permanente. Questo è quello che sto cercando;) la generosità non è per niente.
scigor

Ciao, l'ho appena provato e non ha funzionato. Ma penso che tu stia andando nella giusta direzione. L'ho cambiato in un pulsante più piccolo, ma il fatto è che quando, ad esempio, uccidi explorer.exe vedi ancora il posto inutilizzabile. Ad esempio, quando si tenta di utilizzare il bordo dello schermo, si scopre che dopo aver ucciso explorer.exe è ancora nella stessa posizione in cui si trovava prima e non al limite dello schermo. Quindi ovviamente è necessario modificare qualche altra configurazione / file / registro.
scigor

@ inf.ig.sh: ho trovato un prodotto che ha sostituito l'intero pulsante Start con una piccola bitmap, ma non ci sono problemi. Quindi credo che la larghezza sia integrata nella barra delle applicazioni. So per certo che gli sviluppatori di MS hanno continuato a sviluppare la barra delle applicazioni fino all'ultimo minuto possibile e che molte costanti sono state quindi incorporate nel software della barra delle applicazioni piuttosto che come parametri di registro. Credo che i pochi pixel che possono essere salvati in modalità classica al momento siano i massimi possibili (yick). Altrimenti, sembrano essere possibili solo soluzioni temporanee, almeno fino all'arrivo di Windows 8.
harrymc,

bene il tempo sta per scadere sulla generosità, quindi dal momento che hai investito più sforzi in questa domanda otterrai la generosità, manterrai la domanda aperta nel caso in cui ci sia ancora una soluzione in futuro
scigor

2

Sono un grande fan di Autohotkey, mi ci è voluto un po 'di tempo per trovare il modo più semplice per risolverlo. Ho provato prima le modifiche dirette alle impostazioni del registro, ma quelle richiedono il riavvio di explorer.exe, cosa che non mi è piaciuta, quindi alla fine, dopo molti tentativi falliti, ho finito con questo. Se sono necessari miglioramenti, aggiornerò il codice in pastebin.

Autohotkey GinThinSideTaskbar Ho creato un codice di autohotkey che rende la barra delle applicazioni laterale di Windows 7 con icone piccole 1 icona sottile:

^+t::  
        ; GinThinSideTaskbar
        ; by giny8i8
        ; v1p01 at 2014-06-21
        ; If you use the Windows 7 Taskbar on the side of your screen, with smal icons, this makes it look 1 icon thin instead of the default double size.
        ; Assumptions: The taskbar is not hidden when you run this code (UxSms restart thinners the taskbar only if the taskbar is hidden)

        TaskbarToggler() ;Hide Taskbar
        Sleep 1000      ;Wait a little
        RunWait,sc stop "UxSms" ;Stop "Desktop Window Manager Session Manager Service" service.
        RunWait,sc start "UxSms" ;Start "Desktop Window Manager Session Manager Service" service.
        Sleep 1000      ;Wait a little
        TaskbarToggler() ;Show Taskbar again

        TaskbarToggler()
        {
                Run % "RunDll32.exe shell32.dll,Options_RunDLL 1" ;Open "Taskbar and Start Menu Properties" window
                WinWait, Taskbar and Start Menu Properties ;Wait for the window to open
                SendInput {Tab}{Space}{Enter} ;Togle Taskbar hiding
        }
        return

Ho anche messo questo su http://pastebin.com/4upmWETQ

Sentiti libero di usare e distribuire e per favore pubblica un feedback! giny8i8


1

Potrebbe esserci un modo per risolverlo utilizzando un altro stile di Windows. Puoi usare strumenti come ottimizzare per scaricare e installare altri stili, inoltre ci sono strumenti per progettare il tuo stile. Forse c'è la possibilità di creare uno stile senza questo problema.


nessuno stile di Windows non aiuta qui
scigor

1

So che questa è una vecchia domanda, ma è possibile utilizzare uno strumento chiamato 7+ Taskbar Tweaker per ottenere questo risultato.

Una volta installato e in esecuzione, se fai clic con il pulsante destro del mouse sull'icona della barra delle applicazioni e apri "Opzioni avanzate", c'è un'opzione chiamata "no_width_limit". Abilita quell'opzione e applica la nuova configurazione.

Con questa opzione abilitata, se sblocchi la barra delle applicazioni dovresti ora essere in grado di ridurre la larghezza della barra delle applicazioni rispetto alla dimensione delle icone usando il mouse.

Sentiti libero di bloccare la barra delle applicazioni in seguito. Credo che questa sia la soluzione più completa disponibile.

Immagine dello schermo

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.