Панель задач Windows 7 в качестве боковой панели, минимальная ширина фиксирована

20

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

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

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

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

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

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

scigor
источник
2
Просто обратите внимание: если вы заблокируете панель задач, она не будет показывать те ручки, которые перемещают кнопки окна намного ближе к сфере.
nhinkle

Ответы:

12

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

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

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

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

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

Источник: Youtube

Импульс
источник
Ура за рабочий ответ!
Barfieldmv
Просто нашел ваш ответ, и это было очень полезно. Если вы добавите этот файл .bat в каталог% AppData% \ Microsoft \ Windows \ Start Menu \ Programs \ Startup \, то он должен выполнить .bat при запуске, а не делать это вручную.
WebDevNewbie
Это не работает для меня. По-видимому, он ничего не делает, но cmd говорит, что он останавливается и запускается успешно. Даже из панели Сервисов. Есть идеи?
Карлес Алколея
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
}

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

введите описание изображения здесь

drange17
источник
1
Выглядит очень многообещающе, но можете ли вы добавить некоторые комментарии и описать, что вы делаете?
scigor
Не бежал за мной. почему вы в конечном итоге запустить перспективы? это часть решения или вы просто хотели запустить какое-то приложение, которое создает новое окно? Я мог автоматически с помощью горячих клавиш отправить несколько ключей на панель задач, затем он открыл cmd.exe, но в него ничего не было введено, хотя кажется, что этот скрипт пытается это сделать. я на минуту оставил мышь и клавиатуру в покое, чтобы закончить. Нада. Есть указатели?
tgkprog
2

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

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

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

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

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

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

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

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

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

harrymc
источник
да, я тоже это слышал, и, как вы можете прочитать из комментариев к sagars "answerear", вы можете временно изменить размер, но если вы можете сделать это временно, должен быть хак, чтобы сделать это навсегда. Вот что я ищу;) щедрость не зря.
scigor
Привет, только что попробовал, и это не сработало. Но я думаю, что вы движетесь в правильном направлении. Я изменил ее на меньшую кнопку, но дело в том, что когда вы, например, убиваете explorer.exe, вы все равно видите непригодное для использования место. Например, когда вы пытаетесь использовать край экрана, вы обнаруживаете, что после убийства explorer.exe он все еще находится в том же месте, где он был раньше, а не на границе экрана. Таким образом, очевидно, что нужно изменить какую-то другую конфигурацию / файл / реестр.
scigor
@ inf.ig.sh: я обнаружил продукт, который заменил всю кнопку «Пуск» одним маленьким растровым изображением, но ничего не вышло. Поэтому я считаю, что ширина встроена в панель задач. Я точно знаю, что разработчики MS продолжали разрабатывать панель задач вплоть до последней возможной минуты, и что многие константы были встроены в само программное обеспечение панели задач, а не в параметры реестра. Я считаю, что несколько пикселей, которые можно сохранить в классическом режиме, являются максимально возможными на данный момент (ик). В противном случае возможны только временные решения, по крайней мере, до появления Windows 8.
Harrymc
В настоящее время время для щедрости истекает, поэтому, поскольку вы приложили максимум усилий для решения этого вопроса, вы получите щедрость,
оставив
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

giny8i8
источник
1

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

Майкл К
источник
никакие стили окон здесь не помогают
scigor
1

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

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

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

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

Скриншот

Радикальный Енот
источник