Windows 中的水平滚动快捷方式

Windows 中的水平滚动快捷方式

在 Os X 中,我可以按住 Shift 键并使用鼠标滚轮水平滚动而不是垂直滚动。在 Windows 中有没有办法做类似的事情?

答案1

你可以用它模拟自动热键

如果我找到脚本我会告诉你:来自这些帖子:

你应该找一些脚本

#Persistent mhook := > DllCall("SetWindowsHookEx", "int", 14 > ; WH_MOUSE_LL
    , "uint", RegisterCallback("WheelHorzHook"), > "uint", 0, "uint", 0) return

WheelLeft:
    MsgBox WheelLeft return

WheelRight:
    MsgBox WheelRight return

WheelHorzHook(nCode, wParam, lParam) {
    global mhook
    Critical
    if (wParam = 0x020E)  ; WM_MOUSEHWHEEL (Vista-only)
    {
        if (delta := NumGet(lParam+0,10,"Short"))
        {
            if (delta<0) {
                SetTimer, WheelLeft, -1
                return true
            } else {
                SetTimer, WheelRight, -1
                return true
            }
        }
    }
    return DllCall("CallNextHookEx", "uint", mhook, "int", nCode, "uint",
wParam, "uint", lParam) }

答案2

这是一个 AutoHotKey 脚本,使用 shift 和(大概)本机鼠标滚轮滚动命令来执行此操作:

; Shift + Wheel for horizontal scrolling
+WheelDown::WheelRight
+WheelUp::WheelLeft

这直接取自https://gist.github.com/cheeaun/160999

请记住,许多应用程序(包括 Microsoft 应用程序)都不支持水平鼠标滚轮滚动。(我相信该功能仅在 Windows Vista 中引入。)

答案3

http://www.autohotkey.com/docs/Hotkeys.htm

鼠标滚轮的一些最有用的热键涉及滚动窗口文本的替代模式。例如,当您按住左 Control 键并转动滚轮时,以下一对热键会水平滚动而不是垂直滚动:

~LControl & WheelUp::  ; Scroll left.
ControlGetFocus, fcontrol, A
Loop 2  ; <-- Increase this value to scroll faster.
    SendMessage, 0x114, 0, 0, %fcontrol%, A  ; 0x114 is WM_HSCROLL and the 0 after it is SB_LINELEFT.
return

~LControl & WheelDown::  ; Scroll right.
ControlGetFocus, fcontrol, A
Loop 2  ; <-- Increase this value to scroll faster.
    SendMessage, 0x114, 1, 0, %fcontrol%, A  ; 0x114 is WM_HSCROLL and the 1 after it is SB_LINERIGHT.
return

答案4

在 Windows 中,有一种方法可以用鼠标右键来实现这一点。我有一只带滚轮的鼠标,滚轮上集成了向左/向右滚动按钮。只需向左或向右推动滚轮,即可将内容移动到所需的方向。我有 Logitech VX,我对它非常满意。

如果您愿意,VX 还允许您为每个应用程序配置不同的按钮。这种级别的自定义功能非常好!

相关内容