在Visual Studio中使用鼠标滚轮的水平滚动

Iga*_*lSt 13 scroll visual-studio-2010 visual-studio

我有一个新的鼠标,可以使用它的滚轮左右滚动.虽然此功能适用于网页,Photoshop等,但当我在Visual Studio中查看比窗口更长(水平)的代码时,它将无法执行任何操作.

有没有办法让它发挥作用?

Visual Studio是2010快递,鼠标是罗技MX1100.

Dre*_*kes 13

由于ShiftScroll似乎已被放弃,因此我进行了编辑,我创建了一个小扩展,将该功能添加到Visual Studio 2017和Visual Studio 2019中。

https://marketplace.visualstudio.com/items?itemName=drewnoakes.Sid​​eScroller

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

它允许在文本编辑器和其他几个面板(例如输出窗口)中滚动。希望它可以帮助某人。


对于VS2015,ShiftScroll扩展可以完美地做到这一点。

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

按住shift键时,它以非常舒适的速度左右滚动。

这将是VS IMHO的一个很好的内置功能。

  • 令人难以置信的是,这不是标准功能。 (4认同)
  • 与2017年一起也很好。太神奇了 (2认同)
  • 我们不应该在 SO 中使用评论来表示感谢,但是......谢谢! (2认同)

Noa*_*rds 7

VS2010中存在水平滚动的一些问题,其中一些已在VS2010出厂后修复或解决.我不确定MX1100是否是以下任何一个的具体示例,但有些问题是:

  1. 一些鼠标驱动程序最终将事件发送到错误的HWND; 我们已经看到了将事件总是发送到最后但一件事情的情况,例如解决方案资源管理器将在编辑器具有焦点时滚动.我认为这个是固定的.
  2. 在发送WM_MOUSEHWHEEL(或伪造WM_HSCROLL)之前,许多驱动程序检查主HWND是否具有WS_HSCROLL(声明它具有win32水平滚动条).由于VS的主窗口没有,并且编辑器之类的东西没有win32水平滚动条,它们将拒绝发送水平滚动消息. 这个是不固定的.
  3. (绝对不是你的情况,但是)运行Windows的VMWare Fusion(在OS X上)不会在水平滚动事件上转发到客户端操作系统.

我会与人们核实MX1100是否已知或属于前两类中的任何一类.