Горизонтальная прокрутка с колесиком мыши в Visual Studio - PullRequest
10 голосов
/ 27 сентября 2010

У меня есть новая мышь, которая может прокручивать вправо и влево, используя колесо прокрутки.Хотя эта функция работает на веб-страницах, в Photoshop и т. Д., Она ничего не изменит, если я использую ее в Visual Studio при просмотре кода, который длиннее (по горизонтали), чем окно.

Есть лиспособ заставить его работать?

Visual Studio 2010 экспресс, мышь Logitech MX1100.

Ответы [ 3 ]

7 голосов
/ 27 сентября 2010

В VS2010 есть несколько проблем с горизонтальной прокруткой, некоторые из которых были исправлены или исправлены после поставки VS2010.Я не уверен, является ли MX1100 конкретным примером какого-либо из следующего, но некоторые проблемы были / являются:

  1. Некоторые драйверы мышей заканчивают тем, что посылали событие неправильному HWND;мы видели случаи, когда события всегда отправлялись в последнюю очередь, например, обозреватель решений будет прокручиваться, когда редактор находится в фокусе.Я думаю, что это было исправлено .
  2. Многие драйверы перед отправкой WM_MOUSEHWHEEL (или подделка WM_HSCROLL) проверяют, имеет ли основной HWND WS_HSCROLL (объявляет, что имеет горизонтальную полосу прокрутки win32).Поскольку в главном окне VS нет, а в таких вещах, как редактор, нет win32 горизонтальных полос прокрутки, они откажутся отправлять сообщения горизонтальной прокрутки. Этот незафиксированный .
  3. (Определенно, не ваш случай, но) Запущенные окна VMWare Fusion (в OS X) не пересылают события горизонтальной прокрутки в клиентскую ОС.

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

6 голосов
/ 09 марта 2017

РЕДАКТИРОВАТЬ как ShiftScroll , похоже, было заброшено, я создал небольшое расширение, которое добавляет эту возможность в Visual Studio 2017.

https://marketplace.visualstudio.com/items?itemName=drewnoakes.SideScroller

https://github.com/drewnoakes/vs-side-scroller

Надеюсь, это кого-то выручит.


Для VS2015 расширение ShiftScroll делает это отлично.

https://marketplace.visualstudio.com/items?itemName=NGPearce.ShiftScroll

Прокрутка влево / вправо с очень удобной скоростью, пока вы удерживаете клавишу shift .

Это было бы хорошей встроенной функцией VS IMHO.

2 голосов
/ 10 ноября 2016

Попробуйте мое решение с AutoHotKey:

https://superuser.com/a/1144201/240650

; Shift + Wheel for horizontal scrolling
+WheelUp::
    ; Scroll to the left
    MouseGetPos,,,id, fcontrol,1
    Loop 8 ; <-- Increase for faster scrolling
        SendMessage, 0x114, 0, 0, %fcontrol%, ahk_id %id% ; 0x114 is WM_HSCROLL and the 0 after it is SB_LINERIGHT.
return
+WheelDown::
    ;Scroll to the right
    MouseGetPos,,,id, fcontrol,1
    Loop 8 ; <-- Increase for faster scrolling
        SendMessage, 0x114, 1, 0, %fcontrol%, ahk_id %id% ;  0x114 is WM_HSCROLL and the 1 after it is SB_LINELEFT.
return
...