나는 트랙볼을 구매하려고 생각하고 내 옵션은 로지텍 트랙맨 대리석입니다. 그러나 나는 스크롤 휠이 없다는 것을 알았습니다. 그걸 어떻게 다루나요? 스크롤 휠로 트랙볼을 구매하고 싶습니까? 나는 페이스 북을 사용하여 많이 스크롤합니다.
내 검지와 가운데 손가락으로 클릭하고 싶지 않으므로 트랙맨 휠과 같은 일부 트랙볼 마우스가 작동하지 않습니다.
나는 트랙볼을 구매하려고 생각하고 내 옵션은 로지텍 트랙맨 대리석입니다. 그러나 나는 스크롤 휠이 없다는 것을 알았습니다. 그걸 어떻게 다루나요? 스크롤 휠로 트랙볼을 구매하고 싶습니까? 나는 페이스 북을 사용하여 많이 스크롤합니다.
내 검지와 가운데 손가락으로 클릭하고 싶지 않으므로 트랙맨 휠과 같은 일부 트랙볼 마우스가 작동하지 않습니다.
답변:
Windows를 사용하는 경우 AutoHotKey를 사용해보십시오. 다른 사용자는 이미 Marble Mouse로 스크롤을 해결했습니다 (스크립트를 맨 아래에 사용했습니다).
http://www.autohotkey.com/board/topic/4677-wheel-button-emulation-script/
드라이버와 함께 제공되는 Logitech의 솔루션은 이상합니다. 한 번 클릭하여 4 방향 스크롤을 활성화하고 다시 클릭하여 비활성화하십시오. 당신은 내가 뒤를 따르는 것을 잡고 스크롤 할 수 없습니다. 나는 그들의 소프트웨어를 제거했다.
나는 동일한 트랙볼을 가지고 있으며 솔루션은 매우 우아합니다. 선택한 버튼을 클릭하면 볼 자체가 스크롤 휠이됩니다. 나는 작은 손가락으로 누르는 큰 오른쪽 버튼을 선택했습니다.
이것은 매우 편리하며 익숙해 지려면 며칠 밖에 걸리지 않습니다.
스크롤 휠 (마우스 또는 트랙볼)은 사용할 수없는 것입니다. 날 믿어, 그만한 가치가있다 ;-)
장점 :
그것 없이는 더 이상 살 수 없습니다.
모든 Linux OS에서 구성하는 것은 어렵지 않습니다. /etc/X11/xorg.conf 파일 만 생성하면됩니다 (내 구성 참조 : Xorg.conf를 편집하지 않고 Linux에서 트랙볼 구성 )
자세한 내용은 https://help.ubuntu.com/community/Logitech_Marblemouse_USB 에서 확인할 수 있습니다.
Windows에서는 경험이 없지만 트랙볼과 함께 구성 도구가 제공된다고 생각합니다.
해당 마우스를 위해 특별히 개발 된 Marble Mouse Scroll Wheel을 사용해 볼 수 있습니다.
Marble Mouse Scroll Wheel 또는 Marble Scroll은 트랙볼이나 마우스없이 스크롤 휠을 시뮬레이션하도록 설계된 작은 프로그램입니다. Logitech Marble Mouse를 위해 특별히 설계되었지만 모든 표준 마우스 또는 트랙볼과 함께 사용할 수 있습니다. Windows 2000 이상을 위해 설계되었습니다.
Marble Scroll은 Logitech의 Autoscroll 및 Universal Scroll 기능을 대체합니다. 실제 스크롤 휠을 올바르게 에뮬레이션하지 않으며 제한과 결함이 있습니다.
Marble Scroll은 마우스 또는 트랙볼과 함께 작동하며 Logitech의 SetPoint 또는 MouseWare 드라이버를 설치할 필요가 없습니다.
풍모
- 두 개 이상의 버튼이있는 마우스에 스크롤 휠 추가
- 스크롤 휠을 지원하는 대부분의 응용 프로그램과의 호환성 (모든 유형의 입력)
- 조정 가능한 가속
- 조정 가능한 스크롤 거리 ( "단계별"-아래 참조)
- 실제 마우스 휠을 시뮬레이션하기위한 단계별 스크롤
- 빠른 왼쪽 / 오른손 모드 스위처
- 트레이 아이콘을 클릭하여 빠른 활성화 / 비활성화
- 작고 가벼운 시스템 리소스
제품의 웹 사이트가 현재 다운 된 것으로 보이지만 다음은 Archive.org 에 사이트 텍스트의 사본입니다 .
다운로드 링크 는 여기에 있습니다 .
AutoHotKey 솔루션과 매우 유사한 간단한 100 라인 C ++ 대안이 있습니다.
https://github.com/Seelge/TrackballScroll
편집 : 최신 버전은 시스템 트레이 아이콘을 제공하고 Windows 10에서 작동하며 C #을 기반으로합니다.
내가 사용하는 AutoHotKey 스크립트는 다음과 같습니다. 왼쪽의 작은 버튼을 누른 상태에서 공을 위 / 아래로 굴려서 스크롤합니다. 그러나 왼쪽의 작은 버튼을 클릭해도 여전히 BACK이 수행됩니다. 또한 왼쪽 / 오른쪽으로 스크롤 할 수 있지만 너무 민감하여 여기에 주석 처리되어 있습니다 (로 시작하는 블록 ;timesX := Abs(movedx) / 4
).
http://www.autohotkey.com/board/topic/30816-simulate-scroll-wheel-using-right-mouse-button/ 에서 원본 버전을 찾았습니다 . 나는 거기에 다른 사람 8923으로 내 버전을 게시했습니다.
$*XButton1::
Hotkey, $*XButton1 Up, XButton1up, off
;KeyWait, XButton1, T0.4
;If ErrorLevel = 1
;{
Hotkey, $*XButton1 Up, XButton1up, on
MouseGetPos, ox, oy
SetTimer, WatchTheMouse, 5
movedx := 0
movedy := 0
pixelsMoved := 0
; TrayTip, Scrolling started, Emulating scroll wheel
;}
;Else
; Send {XButton1}
return
XButton1up:
Hotkey, $*XButton1 Up, XButton1up, off
SetTimer, WatchTheMouse, off
;TrayTip
If (pixelsMoved = 0)
{
;The mouse was not moved, send the click event
; (May want to make it PGUP or something)
Send {XButton1}
Send {XButton1Up}
}
return
WatchTheMouse:
MouseGetPos, nx, ny
movedx := movedx+nx-ox
movedy := movedy+ny-oy
pixelsMoved := pixelsMoved + Abs(nx-ox) + Abs(ny-oy)
;timesX := Abs(movedx) / 4
;ControlGetFocus, control, A
;Loop, %timesX%
;{
; If (movedx > 0)
; {
; SendMessage, 0x114, 1, 0, %control%, A ; 0x114 is WM_HSCROLL
; movedx := movedx - 4
; }
; Else
; {
; SendMessage, 0x114, 0, 0, %control%, A ; 0x114 is WM_HSCROLL
; movedx := movedx + 4
; }
;}
timesY := Abs(movedy) / 4
Loop, %timesY%
{
If (movedy > 0)
{
Click WheelDown
movedy := movedy - 4
}
Else
{
Click WheelUp
movedy := movedy + 4
}
}
MouseMove ox, oy
return
Logitech이 스크롤 휠 시뮬레이션을 구현하지 않은 것은 부끄러운 일입니다. 드라이버는 그렇게 할 기능을 약속하지만 모든 응용 프로그램에서 작동하지는 않으므로 매우 쓸모가 없습니다. 그들은 완벽한 마우스를 만드는 데 너무 가까웠습니다! :에스
내가 찾은 유일한 해결 방법은 AutoHotkey 스크립트 를 사용하는 것입니다. 그것으로 당신은 작은 왼쪽 / 오른쪽 버튼을 위아래로 스크롤 할 수 있습니다. 완벽하게 작동하지만 구성하기가 매우 번거 롭습니다. AutoHotkey 기본 사항을 먼저 배워야합니다. 그렇게하기로 결정했다면 여기 내 오토 핫키 스크립트가 있습니다. Jerbo의 원본 스크립트를 개조 한 것입니다 . 한 번의 클릭으로 정상적인 속도로 스크롤이 시작되지만 두 번 또는 세 번의 클릭으로 더 빠르게 스크롤이 시작됩니다.
; This script remaps the two small buttons on a Logitech Trackman® Marble® Mouse
; to act as scroll up and scroll down
global lastXButton1ClickTime := 0
global nrSubsequentXButton1Clicks := 0
ScrollTheWheel(direction, scrollKey)
{
now := A_TickCount
timeSinceLastClick := now - lastXButton1ClickTime
lastXButton1ClickTime := now
if (timeSinceLastClick < 300)
{
nrSubsequentXButton1Clicks := nrSubsequentXButton1Clicks + 1
}
else
{
nrSubsequentXButton1Clicks := 1
}
sleepingFraction := 5
if (nrSubsequentXButton1Clicks <= 1)
scrollSpeed := 30
if (nrSubsequentXButton1Clicks == 2)
scrollSpeed := 15
if (nrSubsequentXButton1Clicks >= 3)
scrollSpeed := 5
timeSlept := scrollSpeed
loop
{
if (direction == 1) ; Scroll down
{
static downKeyState
if (scrollKey == 0)
GetKeyState, downKeyState, XButton1, P
else
GetKeyState, downKeyState, PgDn, P
if downKeyState = U ; The key has been released, so break out of the loop
break
if (timeSlept >= scrollSpeed)
{
Send {WheelDown}
timeSlept = 0
}
}
else ; Scroll up
{
static upKeyState
if (scrollKey == 0)
GetKeyState, upKeyState, XButton2, P
else
GetKeyState, upKeyState, PgUp, P
if upKeyState = U ; The key has been released, so break out of the loop
break
if (timeSlept >= scrollSpeed)
{
Send {WheelUp}
timeSlept = 0
}
}
Sleep, sleepingFraction
timeSlept := timeSlept + sleepingFraction
}
}
XButton2::
ScrollTheWheel(0, 0)
return
XButton1::
ScrollTheWheel(1, 0)
return
!PgUp::
ScrollTheWheel(0, 1)
return
!PgDn::
ScrollTheWheel(1, 1)
return
방금 Logitech Marble 마우스를 얻었고 스크롤하는 데 문제가있었습니다. AutoHotKey에서이 스크립트를 만들었습니다. 왼쪽 X 버튼은 스크롤을 가능하게합니다. 즉, 아래쪽으로 공을 사용하여 세로 및 가로로 스크롤 할 수 있으며 브라우저에서 왼쪽 및 오른쪽 버튼을 사용하여 앞뒤로 이동할 수 있습니다. 오른쪽 X 버튼은 중간 버튼과 같은 동작을합니다.
윈도우 7에 임.
#SINGLEINSTANCE FORCE
GLOBAL status := "basic"
GLOBAL cnt_x
GLOBAL cnt_y
XButton2::MButton
$*XButton1::
status := "scroll"
cnt_x := 0
cnt_y := 0
MOUSEGETPOS, st_x, st_y
SETTIMER, _scroll, 30
RETURN
$*XButton1 UP::
status := "basic"
SETTIMER, _scroll, OFF
RETURN
_scroll:
MOUSEGETPOS, cur_x, cur_y
MOUSEMOVE, st_x, st_y
IF(abs(cur_x-st_x) > abs(cur_y-st_y)) {
cnt_x := cnt_x + (cur_x-st_x)
ControlGetFocus, control, A
IF (cnt_x > 7) {
cnt := floor(cnt_x / 8)
LOOP, %cnt% {
SendMessage, 0x114, 0, 0, %control%, A
}
cnt_x := cnt_x - 8*floor(cnt_x / 8)
} ELSE IF (cnt_x < -7) {
cnt := -ceil(cnt_x / 8)
LOOP, %cnt% {
SendMessage, 0x114, 1, 0, %control%, A
}
cnt_x := cnt_x - 8*ceil(cnt_x / 8)
}
} ELSE {
IF (cur_y >= st_y) {
cnt_y := cnt_y + (cur_y-st_y)**1.2
} ELSE {
cnt_y := cnt_y -(st_y-cur_y)**1.2
}
IF (cnt_y > 7) {
cnt := floor(cnt_y / 8)
LOOP, %cnt% {
CLICK WheelUp
}
cnt_y := cnt_y - 8*floor(cnt_y / 8)
} ELSE IF (cnt_y < -7) {
cnt := -ceil(cnt_y / 8)
LOOP, %cnt% {
CLICK WheelDown
}
cnt_y := cnt_y - 8*ceil(cnt_y / 8)
}
}
RETURN
$*LButton::
IF (status = "basic") {
CLICK DOWN Left
} ELSE IF (status = "scroll") {
SEND {Browser_Back}
}
RETURN
$*LButton UP::
IF (status = "basic") {
CLICK UP Left
}
RETURN
$*RButton::
IF (status = "basic") {
CLICK DOWN Right
} ELSE IF (status = "scroll") {
SEND {Browser_Forward}
}
RETURN
$*RButton UP::
IF (status = "basic") {
CLICK UP Right
}
RETURN
OS에 따라 버튼 중 하나를 구성하여 포인터를 잡고있을 때 포인터를 움직여 스크롤 할 수 있습니다. 예를 들어 다음 스크립트는 마우스의 버튼 10 (Logitech MX310의 "중간"버튼)에서이를 활성화합니다.
#!/bin/sh
xinput set-prop "Logitech USB-PS/2 Optical Mouse" 290 10
xinput set-prop "Logitech USB-PS/2 Optical Mouse" 286 1
xinput set-prop "Logitech USB-PS/2 Optical Mouse" 287 6 7 4 5
두 가지 비표준 옵션
트랙볼 외에도 Apple Magic Trackpad를 사용하십시오. (이것은 나의 현재 솔루션입니다) http://www.apple.com/magictrackpad/
도약 컨트롤러를 구입하여 트랙볼과 함께 사용하십시오. 장치 앞에서 손을 흔들면 위아래로 스크롤됩니다. https://www.leapmotion.com/product
이미지 크레디트 http://www5.pcmag.com/media/images/393268-leap-motion-controller.jpg
간단한 (그리고 인체 공학적으로 감히 말하면) 해결책은 왼손에 스크롤 기능을 넣는 것입니다.
왼손으로 마우스를 사용하거나 왼쪽 가장자리에 내장 된 스크롤 휠이있는 키보드를 사용하거나 Mkey ( http : // www.seriosoft.org/en/index.php ).
왜 이것이 더 인체 공학적이라고 생각합니까?이 접근법은 양손에 긴장을 더 고르게 분산시키기 때문입니다. (자세한 내용은 http://capsoff.org/checklist )입니다.
저는 Windows7을 사용 중이며 스크롤링없이 Kensington Orbit Optical Trackball 을 사용하고 있습니다. 대부분의 AHK 스크립트와 응용 프로그램에서 요구하는 X 버튼이없는 2 버튼 트랙볼입니다.
그러나 MouseImp 는 Windows7에서 나를 위해 일하고 있습니다. IT는 구성 가능하지만 right-click + roll
스크롤 화면을 갖도록 설정했습니다 . 드래그와 비슷하므로 포인터가 움직이고 한 번에 한 화면 만 표시됩니다 [업데이트 : 스크롤 속도를 구성 할 수 있으므로 "한 페이지"이상일 수 있음].
동시에 Kensington의 TrackballWorks 는 페이지 다운 스크롤을 제공하도록 구성되었습니다 left-click + right-click
. 불행히도 한 번에 한 페이지 씩 스크롤 할 수 없습니다 (하나 또는 다른 페이지).
이것은 제품 플러그 가 아니라이 모델 / 트랙볼 형식 에서 작동하는 것 입니다 .
주의 사항 : 끊임없이 마우스 오른쪽 버튼을 클릭하면 혼란이 생길 수 있으며 스크롤 을 멈추고 싶을 때 링크가 따라 가고 / JS가 활성화됩니다 . :::한숨:::
실제로 AutoHotkey를 사용하여 이것을 위해 무언가를 만들었고 여기에서도 공유 할 것이라고 생각했습니다. 마우스 휠 에뮬레이터
왼쪽 및 오른쪽 마우스 버튼을 누른 상태에서 마우스를 움직여 마우스 휠 스크롤을 에뮬레이트합니다.
마우스 왼쪽 버튼과 오른쪽 버튼을 동시에 클릭하여 가운데 클릭을 에뮬레이션 할 수도 있습니다.
Internet Explorer를 포함한 모든 응용 프로그램에서 스크롤 할 수있는 Windows 7 용 또 다른 솔루션 :
scroll.ahk
데스크탑 과 같이 저장하십시오 .scroll.ahk
.이렇게하면 트랙볼을 움직일 때 작은 오른쪽 버튼을 세로로 스크롤 할 수 있습니다. 작은 왼쪽 버튼은 뒤로 버튼입니다.
Erik Elmore의 코드에 대한 링크가 사라지면 다음과 같습니다.
;;
;; Emulate_Scrolling_Middle_Button.ahk
;; Author: Erik Elmore <erik@ironsavior.net>
;; Version: 1.1 (Aug 16, 2005)
;;
;; Enables you to use any key with cursor movement
;; to emulate a scrolling middle button. While
;; the TriggerKey is held down, you may move the
;; mouse cursor up and down to send scroll wheel
;; events. If the cursor does not move by the
;; time the TriggerKey is released, then a middle
;; button click is generated. I wrote this for my
;; 4-button Logitech Marble Mouse (trackball),
;; which has no middle button or scroll wheel.
;;
;; Configuration
;#NoTrayIcon
;; Higher numbers mean less sensitivity
esmb_Threshold = 7
;; This key/Button activates scrolling
esmb_TriggerKey = XButton2
;; End of configuration
#Persistent
CoordMode, Mouse, Screen
Hotkey, %esmb_TriggerKey%, esmb_TriggerKeyDown
HotKey, %esmb_TriggerKey% Up, esmb_TriggerKeyUp
esmb_KeyDown = n
SetTimer, esmb_CheckForScrollEventAndExecute, 10
return
esmb_TriggerKeyDown:
esmb_Moved = n
esmb_FirstIteration = y
esmb_KeyDown = y
MouseGetPos, esmb_OrigX, esmb_OrigY
esmb_AccumulatedDistance = 0
return
esmb_TriggerKeyUp:
esmb_KeyDown = n
;; Send a middle-click if we did not scroll
if esmb_Moved = n
MouseClick, Middle
return
esmb_CheckForScrollEventAndExecute:
if esmb_KeyDown = n
return
MouseGetPos,, esmb_NewY
esmb_Distance := esmb_NewY - esmb_OrigY
if esmb_Distance
esmb_Moved = y
esmb_AccumulatedDistance := (esmb_AccumulatedDistance + esmb_Distance)
esmb_Ticks := (esmb_AccumulatedDistance // esmb_Threshold) ; floor divide
esmb_AccumulatedDistance := (esmb_AccumulatedDistance - (esmb_Ticks * esmb_Threshold))
esmb_WheelDirection := "WheelDown"
if (esmb_Ticks < 0) {
esmb_WheelDirection := "WheelUp"
esmb_Ticks := (-1 * esmb_Ticks)
}
;; Do not send clicks on the first iteration
if esmb_FirstIteration = y
esmb_FirstIteration = n
else {
Loop % esmb_Ticks {
MouseClick, %esmb_WheelDirection%
}
}
MouseMove,esmb_OrigX,esmb_OrigY,0
return
XButton2
에 XButton1
나는 왼쪽 버튼을 선호하면서, 그리고 추가 *
하기 전에 %esmb_TriggerKey%
에 두 줄에 #Persistent
가 시작되도록 섹션 Hotkey, *%esmb_TriggerKey%
. 후자는 수정 자 키로 완벽하게 작동하므로 Ctrl + Scroll이 작동합니다.
여기 다른 트랙맨 마블 사용자가 있습니다.
스크롤 에뮬레이션에 X- 마우스 버튼 컨트롤 을 사용하고 있습니다. 이 기능 구현은 아직 완벽하지는 않지만 자체 SetPoint ™ 소프트웨어에서 Logitech 구현보다 훨씬 유용합니다.
AutoHotKey를 엉망으로 만들고 싶지 않은 누군가에게 XMBC를 추천합니다.