средство для трекбола без колеса прокрутки?

61474
lamwaiman1988

Я думаю купить трекбол, и мой выбор - мрамор Trackite Logitech. Но потом я обнаружил, что колеса прокрутки нет. Как вы справляетесь с этим? Я определенно хочу купить трекбол с колесом прокрутки? Я много пользуюсь фейсбуком.

Я не хочу нажимать указательным и средним пальцами, поэтому некоторые трекбольные мыши мне не подойдут, например, Trackman Wheel.

26
Попробуйте Trackman Wheel от Logitech. Предложение проводной или беспроводной модели. Moab 13 лет назад 0
Я не хочу нажимать указательным и средним пальцами, поэтому я хочу трекбол с мячом в центре. Благодарю. lamwaiman1988 13 лет назад 0
Обычно вы можете настроить подобные вещи с помощью программного обеспечения для мыши. Оттуда вы можете делать разные вещи (удерживая нажатой правую кнопку при перемещении трекбола и т. Д.). Я предполагаю, что вы, вероятно, уже исправили свою проблему, потому что вы опубликовали это ** год назад **. Если нет, удачи тебе. HelpingHand 11 лет назад 0
@HelpingHand Нет, я все еще не мог найти жизнеспособное решение. Теперь я использую PageUp и PageDown для прокрутки. lamwaiman1988 11 лет назад 0

15 ответов на вопрос

13
user1146719

Если вы работаете в Windows, я бы предложил попробовать AutoHotKey, другие пользователи уже использовали прокрутку с помощью Marble Mouse (я использовал скрипт внизу):

http://www.autohotkey.com/board/topic/4677-wheel-button-emulation-script/

Решение Logitech, которое поставляется с их драйверами, странно: вы нажимаете один раз, чтобы включить 4-стороннюю прокрутку, и еще раз, чтобы отключить ее. Вы не можете держать и прокручивать то, что я был после. Я завел удаление их программного обеспечения.

Это решение работает, но поддерживает только небольшую левую кнопку на трекболе, поэтому оно отключает функцию «назад» по умолчанию для веб-страницы. В любом случае, я могу принять этот ответ, попробовав его в течение нескольких дней. lamwaiman1988 11 лет назад 0
ПРИМЕЧАНИЕ. Скрипт AHK работает только для трекболов с X-кнопками или для 4+ кнопочных трекболов. Michael Paulukonis 10 лет назад 0
Очень просто обновить скрипт, чтобы использовать другую кнопку. Над верхним назначением есть комментарий - замените «XButton1» на другое значение, чтобы использовать эту кнопку вместо этого. В файле справки AHK есть список специальных клавиш (просто запустите AHK из меню «Пуск») в «Списке клавиш, кнопок мыши и элементов управления джойстиком», где вы можете выбрать любую клавишу / кнопку, чтобы действовать в качестве модификатора. James B 8 лет назад 0
9
ploum

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

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

Вы быстро поймете, что любое колесо прокрутки (на мышке или трекболе) является чем-то непригодным. Поверь мне, оно того стоит ;-)

Преимущества:

  • 2D прокрутка вместо 1D
  • более быстрая и точная прокрутка, чем у колеса
  • удобнее для длинной прокрутки (благодаря инерции мяча). Идеально подходит для вашего примера Facebook.

Я не могу жить без этого больше.

Настроить это под любой ОС Linux не сложно. Требуется только создать файл /etc/X11/xorg.conf (см. Мою конфигурацию здесь: настройка трекбола под Linux без редактирования Xorg.conf )

Более подробную информацию можно найти здесь: https://help.ubuntu.com/community/Logitech_Marblemouse_USB

В Windows у меня нет опыта, но я думаю, что инструмент настройки поставляется с трекболом.

Моя рабочая среда - это, в основном, окна, так что это нереальный вариант для меня, и я понятия не имею, как перенести это в окна. lamwaiman1988 11 лет назад 2
8
harrymc

You could try the Marble Mouse Scroll Wheel, developed especially for that mouse :

Marble Mouse Scroll Wheel, or just Marble Scroll, is a small program designed to simulate a scroll wheel on any trackball or mouse without one. It was specifically designed for the Logitech Marble Mouse but can work with any standard mouse or trackball. It is designed for Windows 2000 and up.

Marble Scroll is a replacement for Logitech's Autoscroll and Universal Scroll functions; neither properly emulate a real scroll wheel and both have limitations and flaws.

Marble Scroll works with any mouse or trackball and does not require Logitech's SetPoint or MouseWare drivers to be installed.

Features

  • Add a scroll wheel to any mouse with more than two buttons
  • Compatiblity with most applications that support a scroll wheel (for any type of input)
  • Adjustable acceleration
  • Adjustable scrolling distance (per "step" - see below)
  • Stepped scrolling to simulate a real mouse wheel
  • Quick left/right handed mode switcher
  • Quick enable/disable by clicking on the tray icon
  • Small and light on system resources

The product's website seems currently down, but here is a copy of the site's text on Archive.org.

A download link is here.

На Windows 8 это работает хорошо. Justinas Dūdėnas 11 лет назад 0
Это по-прежнему прекрасно работает на Win7 и 8. Удерживание кнопки назад на моей мыши позволяет мне прокручивать трекбол. Тем не менее, я все еще могу использовать кнопку «Назад» в качестве кнопки «Назад». В основном это добавило функциональности, ничего не убирая. Лучший вид решения. japzone 10 лет назад 0
Кажется, не работает надежно на Windows 10 :( askvictor 9 лет назад 1
Связанное зеркало загрузки отображается как вредоносное ПО - не уверен, что это ложный результат, но пока не изменяет его. James B 8 лет назад 0
@JamesB: этот продукт с 2009 года и был установлен много раз. Это должно быть ложное срабатывание. Замечу, что понятия не имею, насколько хорошо он работает на более новых версиях Windows. harrymc 8 лет назад 0
Я использовал его в течение многих лет, и он прекрасно работает до Windows 8, в которой он стал ненадежным. Я не пробовал это в Win 10. Я написал по электронной почте автору оригинала, который ответил (!) И, хотя он потерял исходный код, рассказал мне основную суть того, как это сделать. Суть, которую он дал мне, - это то, что сделал этот другой ответ: http://superuser.com/a/782571/127024 Johann 8 лет назад 0
По сравнению со всеми предлагаемыми решениями, это пока лучшее. Скрипты AHK не блокируют движение указателя во время прокрутки, что приводит к неправильному выбору в случае выбора + прокрутка. dy_ 8 лет назад 0
5
Silpion

Существует простая 100-строчная альтернатива C ++, которая очень похожа на решения AutoHotKey, то есть

  • отправка событий вертикального / горизонтального колеса прокрутки путем перемещения трекбола, удерживая одну из кнопок X и
  • средний щелчок при нажатии и отпускании кнопки X без перемещения трекбола.

https://github.com/Seelge/TrackballScroll

Изменить: более новые версии предоставляют значок systray, работают на Windows 10 и основаны на C #.

Это решение превосходит любой из сценариев AutoHotKey, которые я пробовал, и все они страдают от назойливого «колебания курсора» из-за управляемого временем события, которое «перемещает мышь обратно в исходное положение» каждые много миллисекунд, пока прокрутки. Этот простой исполняемый файл TrackballScroll не имеет таких ограничений и работает очень хорошо. Единственное предостережение заключается в том, что он не работает надежно в Windows 10 Creator Update, на момент написания этой статьи: https://github.com/Seelge/TrackballScroll/issues/14 Ben Johnson 7 лет назад 0
4
user318097

Here's the AutoHotKey script that I use. You scroll by holding down the left small button and rolling the ball up/down. However clicking the left small button still does BACK. It can also scroll left/right but that was too sensitive for me so it's commented out here (the block that starts with ;timesX := Abs(movedx) / 4).

I found the original version at http://www.autohotkey.com/board/topic/30816-simulate-scroll-wheel-using-right-mouse-button/. I posted my version there as anotherperson8923.

$*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 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 Send } 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 
Именно то, что я искал, спасибо! Patrick 10 лет назад 0
Если вы предпочитаете использовать правую кнопку мыши, замените «XButton1» на «RButton». Matt Woelk 10 лет назад 0
Это работает почти идеально для меня, но есть ли способ сделать прокрутку более плавной? Я пробовал оба метода SendMessage и WheelUp / Down для вертикальной прокрутки, и они оба делают «прыжок» askvictor 9 лет назад 0
3
Dimitri C.

Жаль, что Logitech не реализовал симуляцию колеса прокрутки. Их драйвер обещает особую функцию, но она работает не для всех приложений, что делает ее совершенно бесполезной. Они были так близки к созданию идеальной мыши! : s

Единственный обходной путь, который я нашел, - это использовать скрипт AutoHotkey для него. С его помощью вы можете сделать крошечные кнопки влево / вправо прокручивать вверх и вниз. Он отлично работает, но его сложно настроить: вам нужно сначала изучить основы AutoHotkey. Если вы решите сделать это, вот мой скрипт AutoHotkey. Это адаптация оригинального сценария Джербо . Один щелчок начнет прокрутку в нормальном темпе, но двойной или тройной щелчок начнет прокрутку быстрее.

; 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  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  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 
Я мог бы также нажать клавишу PageUp / PageUp напрямую .... lamwaiman1988 11 лет назад 0
2
Amiral_JCDG

I just got a Logitech Marble mouse and also had the problem of scrolling. So I have made this script on AutoHotKey. The left Xbutton enables scrolling, meaning that while down you can scroll vertically and horizontally with the ball, and move forward and backwards in the browser with the left and right buttons. The right Xbutton has the same action as the middle button.

Im on windows 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  } RETURN  $*LButton UP:: IF (status = "basic") { CLICK UP Left } RETURN  $*RButton:: IF (status = "basic") { CLICK DOWN Right } ELSE IF (status = "scroll") { SEND  } RETURN  $*RButton UP:: IF (status = "basic") { CLICK UP Right } RETURN 
Я сдался и использовал клавиши вверх и вниз на клавиатурах. Также я бы нажал на пустое место на полосе прокрутки, чтобы переместить страницу вверх и вниз. lamwaiman1988 9 лет назад 0
1
Ignacio Vazquez-Abrams

В зависимости от вашей ОС, вы можете настроить одну из кнопок для включения прокрутки, перемещая указатель при удерживании. Например, следующий скрипт включает это на кнопке 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 
1
Carl B

There are such marble mouse (mice) that have a scroll wheel included. Otherwise,it looks like an app or some script would be required for a non wheeled mouse along with the use of one of the buttons to engage a scroll function (that you noted in a comment to another answer, as not an acceptable solution).

So "Why reinvent the wheel?" is a good adage in this case.

In these examples, the element is physically installed and there are many types to choose from. Below are two examples and styles.

wh1

Or something like this:Adesso

wh2

1
spuder

Two non conventional options

enter image description here

Image credit http://www5.pcmag.com/media/images/393268-leap-motion-controller.jpg