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

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

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

26 голосов | спросил lamwaiman1988 29 J0000006Europe/Moscow 2011, 05:14:23

15 ответов


13

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

http://www.autohotkey.com/board /тема /4677-колесо-кнопка эмуляции-скрипт /

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

ответил user1146719 2 PMpTue, 02 Apr 2013 19:51:16 +040051Tuesday 2013, 19:51:16
9

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

Это very удобно, и для его использования требуется всего несколько дней.

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

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

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

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

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

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

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

ответил ploum 6 Jpm1000000pmFri, 06 Jan 2012 16:52:04 +040012 2012, 16:52:04
8

Вы можете попробовать колесо прокрутки Marble Mouse, разработанное специально для этой мыши:

  

Колесо прокрутки Marble Mouse или просто Marble Scroll - небольшая программа   предназначен для имитации колесика прокрутки на любом трекболе или мыши без   один. Он был специально разработан для мыши Logitech Marble, но   может работать с любой стандартной мышью или трекболом. Он предназначен для   Windows 2000 и выше.

     

Marble Scroll - это замена Autoscroll и Universal Logitech   Функции прокрутки; никоим образом не эмулировать реальное колесо прокрутки и   оба имеют ограничения и недостатки.

     

Marble Scroll работает с любой мышью или трекболом и не требует   Установленные драйверы Logitech SetPoint или MouseWare.

     

Функции

     
  • Добавьте колесо прокрутки к любой мыши с более чем двумя кнопками
  •   
  • Совместимость с большинством приложений, поддерживающих колесо прокрутки (для любого типа ввода)
  •   
  • Регулируемое ускорение
  •   
  • Регулируемое расстояние прокрутки (за «шаг» - см. ниже)
  •   
  • Шаговая прокрутка для моделирования реального колеса мыши.
  •   
  • Быстрый переключатель влево /вправо.
  •   
  • Быстрое включение /выключение, щелкнув значок в трее.
  •   
  • Малый и легкий доступ к системным ресурсам
  •   

Веб-сайт продукта кажется в настоящее время недоступным, но вот копия текста сайта на Archive.org .

Ссылка для скачивания здесь .

ответил harrymc 28 PM00000030000001531 2013, 15:55:15
5

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

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

https://github.com/Seelge/TrackballScroll

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

ответил Silpion 13 J000000Sunday14 2014, 16:43:33
4

Вот сценарий AutoHotKey, который я использую. Вы прокручиваете, удерживая левую маленькую кнопку и катя мяч вверх /вниз. Однако нажатие левой маленькой кнопки еще делает BACK. Он также может прокручивать влево /вправо, но это слишком чувствительно для меня, поэтому здесь прокомментирован (блок, начинающийся с ;timesX := Abs(movedx) / 4).

Я нашел оригинальную версию на http: //www.autohotkey .com /доска /тема /30816-симулировать-прокрутки колеса с помощью щелчка правой кнопкой мыши кнопку /. Я разместил свою версию там как 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 {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
ответил user318097 24 PMpThu, 24 Apr 2014 20:36:53 +040036Thursday 2014, 20:36:53
3

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

Единственным обходным решением, которое я нашел, является использование скрипта AutoHotkey . С его помощью вы можете сделать крошечные кнопки влево /вправо, прокручивая вверх и вниз. Он работает отлично, но это настоящая хлопот, чтобы настроить его: сначала вам нужно изучить основы 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
ответил Dimitri C. 30 Maypm13 2013, 17:15:43
2

У меня появилась только мышь Logitech Marble, а также проблема прокрутки. Поэтому я сделал этот скрипт на AutoHotKey. Левый Xbutton позволяет прокручивать, что означает, что в то время как вниз вы можете прокручивать по вертикали и по горизонтали с мячом и двигаться вперед и назад в браузере левой и правой кнопками. Правильный Xbutton имеет то же действие, что и средняя кнопка.

Im на окнах 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
ответил Amiral_JCDG 10 J000000Friday15 2015, 21:02:50
1

В зависимости от вашей ОС вы можете настроить одну из кнопок, чтобы включить прокрутку, перемещая указатель во время удерживания. Например. следующий скрипт позволяет это на кнопке 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
ответил Ignacio Vazquez-Abrams 29 J0000006Europe/Moscow 2011, 05:36:32
1

Есть такая мраморная мышь (мыши), в которой есть колесо прокрутки. В противном случае, похоже, приложение или какой-то скрипт потребуется для не колесной мыши вместе с использованием одной из кнопок, чтобы задействовать функцию прокрутки (которую вы отметили в комментарии к другому ответу, как не приемлемое решение).

Итак, зачем изобретать колесо? является хорошей пословицей в этом случае.

В этих примерах элемент физически установлен и есть много типов на выбор. Ниже приведены два примера и стили.

wh1

Или что-то вроде этого: Adesso

wh2

ответил Carl B 1 stEurope/Moscowp30Europe/Moscow09bEurope/MoscowSun, 01 Sep 2013 04:48:36 +0400 2013, 04:48:36
1

Два нестандартных варианта

  • Используйте трекпад Apple Magic в дополнение к трекболу. (Это мое текущее решение) http://www.apple.com/magictrackpad/

  • Приобретите контроллер прыжков и используйте его в дополнение к трекболу. Проведите рукой перед устройством, чтобы прокручивать вверх и вниз. https://www.leapmotion.com/product

введите описание изображения здесь>> </p>

<p> Image credit <a href= http://www5.pcmag.com /media/images/393268-leap-motion-controller.jpg

ответил spuder 4 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 04 Sep 2013 08:07:03 +0400 2013, 08:07:03
1

Простое (и эргономичное решение смело сказать) - это функция прокрутки на вашем левом фланге.

Это может быть достигнуто с помощью мыши левой рукой /с помощью клавиатуры со встроенным колесом прокрутки на ее левом краю /путем назначения функций прокрутки клавишам программируемой клавиатуры с помощью программы, такой как Mkey ( http://www.seriosoft.org/en/index.php ).

Почему я думаю, что это более эргономично, потому что этот подход более равномерно распределяет натяжение на обеих руках. (Подробнее об этом: http://capsoff.org/checklist ).

ответил drabsv 16 thEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 16 Sep 2014 15:34:20 +0400 2014, 15:34:20
1

Я нахожусь на Windows7 и используя оптический трекбол Kensington Orbit без прокрутки - это двухкнопочный трекбол, без кнопок X, требуемых большинством сценариев AHK и приложений, отмеченных другими .

Однако MouseImp работает для меня на Windows7. IT настраивается, но я настроил его для right-click + roll, чтобы получить экран прокрутки. Это больше похоже на перетаскивание, поэтому указатель перемещается, и у вас есть только один экран за раз [обновление: скорость прокрутки настраивается, поэтому она может быть больше, чем «одна страница»).

В то же время Kensington TrackballWorks был настроен так, чтобы дать мне прокрутку вниз по страницам left-click + right-click. К сожалению, он не может затем прокручивать страницу назад за один раз (один или другой).

Это не продукт-плагин - это то, что я нашел для работы с этой моделью /типом трекбола .

Предостережение: вы постоянно правы и нажимаете левой кнопкой мыши, и это может привести к запутыванию, а ссылки будут сопровождаться /js-активированы, когда вы просто хотите остановить прокрутку . ::: вздыхать :::

ответил Michael Paulukonis 13 PM00000050000004331 2014, 17:52:43
1

У меня только что получил орбитальный трекбол от kensington, это довольно удивительно. У вас есть мяч, у вас есть обе кнопки на каждой стороне, и у вас есть своего рода круг вне трекбола, который позволяет прокручивать вверх или вниз по странице. Это действительно работает, и я использую Windows и Mac OSX.

ответил andremartins 12 FebruaryEurope/MoscowbThu, 12 Feb 2015 17:51:38 +0300000000pmThu, 12 Feb 2015 17:51:38 +030015 2015, 17:51:38
1

Я на самом деле сделал что-то для этого, используя AutoHotkey некоторое время назад, и решил, что я поделюсь им и здесь: Эмулятор колесика мыши

Эмулирует прокрутку колесика мыши, перемещая мышь, удерживая левую и правую кнопки мыши.

Вы также можете эмулировать средний клик, одновременно щелкая левой и правой кнопками мыши.

ответил blah238 8 AM00000090000002531 2015, 09:48:25
0

Другое решение для Windows 7, которое позволяет прокручивать файлы во всех приложениях, включая Internet Explorer:

  1. Установите AutoHotKey .
  2. Сохранить этот скрипт как scroll.ahk на Рабочий стол.
  3. Щелкните правой кнопкой мыши на scroll.ahk.
  4. Выберите Сценарий запуска .
  5. Подтвердите, если появится запрос.

Это приведет к тому, что маленькая правая кнопка будет прокручиваться вертикально при перемещении трекбола. Маленькая левая кнопка - кнопка назад.

ответил Dave Jarvis 6 PMpWed, 06 Apr 2016 23:19:59 +030019Wednesday 2016, 23:19:59

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132