20

Это может звучать как банальный и ненужный вопрос, но это продолжает раздражать меня все больше и больше. Если вы выберете "маленькие значки" для панели задач в Windows 7 и панель задач будет либо в верхней, либо в нижней части экрана, панель задач станет довольно маленькой.

Снимок экрана горизонтальной панели задач

Но поскольку у меня широкоэкранный монитор, я привык располагать панель задач на боковой стороне экрана, поскольку она использует пространство более эффективно. Но я не могу сделать панель задач уже определенного уровня, и она остается довольно широкой.

Снимок экрана вертикальной панели задач

Может быть, есть запись реестра, которую я мог бы установить, чтобы получить ту же ширину на боковой стороне экрана, что и высота, которую я получаю внизу или вверху?

(PS: трюк MinWidth здесь не помогает.)

7 ответов7

12

Одним из идеальных рабочих решений будет:

  • создать файл ThinTaskbar.bat
  • введите следующий контент:

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

  • сохрани и закрой
  • включите следующие параметры панели задач: блокировка и автоматическое скрытие
  • выполнить пакетный скрипт с правами администратора
  • сделанный!

Теперь вы можете отключить автоматическое скрытие, если хотите. Сценарий должен применяться после каждой перезагрузки.

Источник: Youtube

3

На самом деле я задал дубликат на этот вопрос, и он до сих пор не решен. Вертикальная панель задач на Windows Server 2008 слишком широко

Но я могу указать вам на эту ссылку:

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

В основном это говорит о том, что маленькие значки практически шире, чем кажутся (но не выше), и что это по замыслу. Вы не можете изменить ширину панели задач ниже виртуальной ширины значков.

Причина, по которой он обеспечивает меньшую «высоту» в горизонтальном положении, заключается в том, что каждая иконка по-прежнему имеет широкую ширину, поэтому ее можно легко ориентировать с помощью кончика пальца.

Может быть, кто-то может использовать это для создания решения :)

3

У меня есть решение, которое я использую прямо сейчас. Я потратил часы на кодирование этого и очень доволен, что он отлично работает для меня. Если хотите, используйте его, просто отметьте мне (drange17), если хотите опубликовать этот код в Интернете на форумах. Я хотел бы, в свою очередь, кредитовать Lexikos за код для ConsoleSend.

Во-первых, я поместил ярлык для командной строки под названием «cmd.lnk» в C:\Program Files. Я перехожу к свойствам этого ярлыка >> вкладка ярлыка >> Дополнительно >> Включить запуск от имени администратора.

Во-вторых, я скачал AutoHotkey и запустил его при запуске (поместите ярлык для AutoHotkey в папку «Пуск» в меню «Пуск») со следующим кодом (который определенно не очень элегантен, я уверен, что кто-то может сделать лучше, но это делает работа по сужению вертикальной панели задач для меня):

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
}

Вот результирующая тонкая вертикальная панель задач:

2

Я большой поклонник autohotkey, мне потребовалось некоторое время, чтобы найти самый простой способ решить эту проблему. Сначала я попытался изменить настройки реестра напрямую, но для этого требуется перезапуск explorer.exe, который мне не понравился, так что, наконец, после многих неудачных попыток я закончил с этим. Если есть необходимость улучшения, я буду обновлять код в pastebin.

Autohotkey GinThinSideTaskbar Я сделал код автоотключения, который делает боковую панель задач Windows 7 с маленькими значками 1 тонкой:

^+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

Я также поместил это на http://pastebin.com/4upmWETQ

Не стесняйтесь использовать и распространять, и, пожалуйста, оставьте отзыв! giny8i8

2

Некоторые люди говорят, что это поведение разработано для того, чтобы ограничить минимальную толщину для сенсорной функциональности: панель задач не становится слишком маленькой, чтобы ее можно было использовать кончиком пальца, поэтому на боковой части экрана она сохранит этот минимальный размер.

Если у вас есть ноутбук, я нашел это временное решение:

При включении питания панель задач по умолчанию имеет «широкий» размер по вертикали на левой стороне экрана. Чтобы уменьшить ширину панели задач, я просто отключаю ноутбук от источника переменного тока. Немедленно изменяется размер панели задач (не работает, если на панели задач не установлено «автоматическое скрытие»). Новый размер панели задач поддерживается «постоянно» во время работы Windows 7. Я даже могу отключить параметр «автоскрытие» на этом этапе, и панель задач по-прежнему поддерживает узкий размер. Конечно, я подключаю питание к ноутбуку, чтобы зарядить аккумулятор. После того, как я выключил свой ноутбук и затем снова включил его для использования, я просто делаю тот же трюк с переменным током, чтобы снова изменить размер вертикальной панели задач. Я не пробовал это на другом ноутбуке / ПК, поэтому я не знаю, работает ли этот трюк на всех системах win7.

РЕДАКТИРОВАТЬ

Я мог бы найти направление, которому вы могли бы следовать.

Во-первых, при установке темы Windows на классическую, я заметил, что кнопка «Пуск» была уменьшена по ширине, а затем она позволяет уменьшить ширину панели задач до ширины кнопки «Пуск». Вам также может понадобиться отключить часы и дату.

Это заставило меня задуматься о том, что проблема ширины вызвана слишком большой шириной самой кнопки «Пуск». Итак, вот несколько ссылок на настройку кнопки «Пуск»:

Как изменить текст кнопки «Пуск» в Windows 7
Как изменить кнопку меню «Пуск» в Windows 7

Это решение может или не может работать, и оно может или не может работать с Aero, или только в классическом режиме.
В любом случае: счастливого взлома!

1

Я знаю, что это старый вопрос, но вы можете использовать инструмент под названием 7+ Taskbar Tweaker для достижения этой цели.

После установки и запуска, если вы щелкнете правой кнопкой мыши по иконке в трее и откроете "Дополнительные параметры", появится опция "no_width_limit". Включите эту опцию и примените новую конфигурацию.

С этим включенным, если вы разблокируете панель задач, теперь вы сможете уменьшить ширину панели задач относительно размера значков с помощью мыши.

Не стесняйтесь заблокировать панель задач впоследствии. Я считаю, что это наиболее полное из доступных решений.

Скриншот

1

Там может быть способ решить эту проблему с помощью другого стиля окон. Вы можете использовать такие инструменты, как настройка, чтобы загрузить и установить другие стили, также есть инструменты для разработки собственного стиля. Может быть, есть возможность создать стиль без этой проблемы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .