Сопоставить "fn" + "home" с яркостью экрана с помощью AutoHotKey?

Может кто-нибудь показать мне, какой код скрипта мне понадобится для сопоставления клавиатуре "fn" + "home" моего ноутбука, чтобы уменьшить яркость экрана (и впоследствии "fn" + конец для увеличения).

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

Панель управления \ Оборудование и звук \ Параметры электропитания

но я не знаю, как заставить горизонтальную полосу прокрутки "яркость экрана" перемещаться по горизонтали при каждом нажатии?

2 ответа

Решение

Autohotkey предлагает отличную возможность найти "номер" ключа:

Если у вашей клавиатуры или мыши есть клавиша, не указанная выше, вы все равно можете сделать ее горячей клавишей, выполнив следующие действия (требуется Windows XP/2000/NT или более поздняя версия):

  1. Убедитесь, что запущен хотя бы один скрипт, использующий перехват клавиатуры. Вы можете определить, есть ли в скрипте зацепка клавиатуры, открыв его главное окно и выбрав "View->Key history" в строке меню.
  2. Дважды щелкните значок в трее этого скрипта, чтобы открыть его главное окно.
  3. Нажмите одну из "загадочных клавиш" на клавиатуре.
  4. Выберите пункт меню "Вид-> История ключей"
  5. Прокрутите вниз до нижней части страницы. Где-то внизу находятся события нажатия клавиш и нажатия клавиш для вашего ключа. ПРИМЕЧАНИЕ. Некоторые ключи не генерируют события и поэтому не будут отображаться здесь. Если это так, вы не можете напрямую сделать эту конкретную клавишу горячей клавишей, потому что ваш драйвер клавиатуры или аппаратное обеспечение обрабатывают ее на уровне, слишком низком для доступа AutoHotkey. Возможные решения см. Ниже.
  6. Если ваш ключ обнаружим, запишите трехзначное шестнадцатеричное значение во втором столбце списка (например, 159).
  7. Чтобы определить этот ключ как горячую клавишу, следуйте этому примеру:

    SC159::; Замените 159 значением вашего ключа.
    MsgBox,% A_ThisHotKey% был нажат.
    вернуть

Таким образом, очень легко найти номера ваших клавиш и создать ярлык для увеличения яркости.

сноска

ключевая проблема

Скорее всего, вы не сможете использоватьFn+ Home, потому чтоFn обычно является специальной клавишей, которая обрабатывается внутри контроллера клавиатуры. Поскольку он обрабатывается аппаратно и никогда не проходит через программное обеспечение (т. Е. ОС), его нельзя перехватить или переназначить. Вам нужно будет выбрать другую комбинацию горячих клавиш (попробуйте клавишу Win или что-то еще).

SmartBright

Если вы хотите выбрать другую горячую клавишу, есть способы облегчить доступ к яркости экрана. Одним из вариантов является скрипт SmartBright на форумах AutoHotkey. Это позволяет регулировать яркость экрана с помощью мыши, создавая оверлей с переходом по клику. Из-за того, как он работает, он фактически не влияет на подсветку, отображаемую в параметрах питания панели управления. Это может быть проблемой или выгодой в зависимости от вашей ситуации. Фактически, поскольку он работает независимо от основного регулятора яркости, вы можете использовать его вместе с основным регулятором, чтобы дополнительно уменьшить яркость сверх того, что доступно для самого элемента управления подсветкой (некоторые люди жалуются, что минимальная яркость все еще слишком яркая).).

NirCmd

Другим вариантом является то, что я использовал в течение последних нескольких лет. Это всего лишь две строки кода AutoHotkey, которые устанавливают " горячие" клавиши для вызова nircmd Nirsoft, чтобы позволить мне настроить подсветку экрана:

; Screen brightness
; Ctrl+Alt+Shift + PgUp/PgDown to adjust screen brightness
^!+PgUp::Run nircmd.exe changebrightness +10
^!+PgDn::Run nircmd.exe changebrightness -10

Удостоверься что nircmd.exe находится в той же директории, что и скрипт, и работает отлично. Единственная проблема заключается в том, что если вы запустите его под учетной записью пользователя, он не будет работать, пока активны программы, работающие под учетной записью администратора (например, экран входа в систему). Это поправимо, но редко необходимо.

Другие вопросы по тегам