Есть ли какой-нибудь способ быстро изменить строки прокрутки мыши с одного значения на другое в Windows?

509
Kirby

У меня есть ноутбук, и есть указка (TrackPoint). Удобно использовать «строки прокрутки мыши» для 1 строки, а для мыши, которая поступает из док-станции, - 3 строки.

Есть ли способ быстро переключить его? Может быть, команда оболочки ...

PS И было бы здорово автоматически включить его на подключенном устройстве. :) Этот запрос упоминается в Windows 10: настройка линий вертикальной прокрутки для каждого вопроса мыши .

Система: Windows 10.
Ноутбук: Thinkpad.

1

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

1
Linus Waerner

Я не смог найти ничего, что меняет это индивидуально для каждого устройства, так как это настройка рабочего стола.

Однако вы можете создать .reg-файл со следующим содержимым:

Windows Registry Editor Version 5.00  [HKEY_CURRENT_USER\Control Panel\Desktop] "WheelScrollLines"="3" 

Запустив его, вы изменяете скорость прокрутки до трех строк за раз. Измените значение на «1», запустите его снова и хорошо - у вас новая скорость прокрутки.

Проще всего было бы создать два файла и связать их с любой комбинацией клавиш или просто поместить их где-нибудь в доступном месте, как в Quick Start.

Удачи :-)

Спасибо за эту заметку. Ну, это что-то. Но когда я изменил это непосредственно, есть изменения в поведении, к сожалению. : - | Kirby 6 лет назад 0
опечатка: нет * никаких * изменений в поведении. Kirby 6 лет назад 0
1
Mikhail V

Вы можете использовать AutoHock для установки этой опции. DllCall может использоваться для вызова функций Winapi.

Справочник по MSDN: функция SystemParametersInfoA

Обратите внимание, что не все приложения немедленно реагируют на изменения. Большинство будет делать, но некоторые приложения должны быть перезапущены, чтобы почувствовать изменения (например, Notepad ++). Настройки на устройство невозможны, я думаю.

Пример скрипта для переключения между 1 и 5 строками (нажатием F1клавиши):

setss(L) { dllcall("SystemParametersInfoA", uint, 0x69, uint, L, uintP, 0, uint, 1 | 2) }  toggle := 0 F1:: toggle := !toggle if toggle ss := 1 else  ss := 5 setss(ss) return 
прохладно! Я уже написал решение для Autohotkey, на самом деле, но у вас есть что-то более "системное". Так что, если это работает, мне это нравится. Михаил, не могли бы вы объяснить, что означают параметры? Может быть, есть сообщение на форуме AHK? .. Kirby 6 лет назад 0
Я просто хотел бы узнать, как изменить такие параметры системы. Заранее спасибо. Kirby 6 лет назад 0
@Kirby Добавил немного информации. Поэтому я смотрю в MSDN, записываю необходимые значения и помещаю в Dllcall после имени функции в том же порядке и типах, что и в сигнатуре функции, см. Документы Dllcall на сайте AHK (хотя некоторые из них не работают). Чтобы найти константы fWinIni, я использовал [Pinvoke.net] (http://pinvoke.net/search.aspx?search=spif&namespace= [All]) и, конечно, примеры Google для Winapi & C ++, потому что вы найдете больше, чем с Другие языки. Mikhail V 6 лет назад 0
Ну, звучит как надежная работа. Спасибо за объяснение. Kirby 6 лет назад 0