Возможно ли включить Num Lock ВСЕГДА без возможности отключения клавиши Num Lock?

4611
Adam Varhegyi

Так что этот вопрос не о включении num блокировки по умолчанию.

Можно ли включить функцию num lock и убрать способность кнопки num lock на клавиатуре влиять на это состояние?

РЕДАКТИРОВАТЬ (потому что):

В моей клавиатуре Homeкнопка действительно близка к numlock. На работе я часто использую Homeи цифровую клавиатуру, но иногда я случайно попадаю numlockтоже. В результате моя цифровая клавиатура отключается, что очень неприятно, когда мне приходится набирать много цифр, и через некоторое время я понимаю, что ничего не печатал, потому что цифровая клавиатура отключила цифровую клавиатуру.

10
выньте ключ с цифровой клавишей и переведите переключатель в положение «включено», верните ключ обратно. Moab 8 лет назад 5
W-зачем тебе это? просто любопытно Registered User 8 лет назад 0
@RegisteredUser см. Мои правки Adam Varhegyi 8 лет назад 0
http://superuser.com/a/688895 + http://superuser.com/a/688891 dxiv 8 лет назад 0

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

4
B540Glenn

Physically remove the NumLock key. When your finger goes to press it, it won't be there.

Надежный раствор. Rohit Gupta 8 лет назад 0
Это на самом деле не надежно. Некоторое программное обеспечение (например, HyperV) может снова отключить numlock, и когда вы вытащили клавишу из клавиатуры (или использовали клавиши SharpKeys), вам придется дурачиться и перезагружаться, чтобы снова включить ее. StingyJack 6 лет назад 2
3
Oliver

Я использую CapShift, и это бесплатно:

https://www.donationcoder.com/Software/Skrommel/index.html#CAPshift

«CAPshift расширяет ключ Caps Lock, замедляя его ...

  • Нажмите и удерживайте в течение 0,5 секунды, чтобы включить / отключить.
  • Нажмите и удерживайте в течение 1 секунды, чтобы отобразить меню.
  • Щелкните правой кнопкой мыши значок в трее, чтобы открыть меню.
  • Также замедляет F1, Insert, NumLock и ScrollLock. "

Преимущество заключается в следующем: вы не теряете возможность менять NumLock, если вам это действительно нужно.

Звучит хорошо, но установщик не работает на Windows 8.1: [ Adam Varhegyi 8 лет назад 0
Я нашел способ спасибо. Adam Varhegyi 8 лет назад 0
2
cloneman

It's possible to automatically put it back on (within a few milliseconds) when it gets turned off, via an application.

This guy created an autohotkey script for it which he calls "Numlock Enforcer" http://www.donationcoder.com/forum/index.php?topic=9018.0

Not to most elegant solution, but it should work.

1
Aganju

Maybe not the answer you are looking for, but it solved that problem for me:

Activate the sound for the Lock keys in Windows (in Windows 10: Control Panel\Ease of Access\Ease of Access Center\Make the keyboard easier to use\Turn on Toggle keys)

That way, when you hit it, it beeps, and you realize it right away. It actually trained me to not hit it anymore at all, because the signal is right when it happens.

Хорошая идея, работа со встроенным функционалом! Oliver 8 лет назад 0
0
harrymc

The BIOS might have a setting to disable the NumLock key, but we need to know your computer-model and BIOS-version to discuss this more in depth. Typically, one boots into the BIOS and looks for an item named "NumLock State", "Bootup NumLock State" or similar, press Enter and use the arrow keys to select "Off" or "Disabled", then press Enter.

For Windows hackers, the registry contains in HKCU\Control Panel\Keyboard an item named InitialKeyboardIndicators which has the undocumented value of 1 to disable the NumLock. Its effectiveness may vary according to the version of Windows.

The brutal solution is to pop off the Numlock key cap and use a pen to change its setting when required. The setting will normally stick, since Windows XP and later remember its state across boots (unless the BIOS or other setting interferes).

0
HaveSpacesuit

Шаг 1

Измените реестр, чтобы установить начальное состояние NumLock на при запуске:

HKEY_USERS\.DEFAULT\Control Panel\Keyboard\InitialKeyboardIndicators Set to Value to 2 

Шаг 2

Добавьте скрипт AutoHotkey для контроля ключа и убедитесь, что его нельзя отключить. Установите AutoHotkey и создайте новый скрипт с именем MyBestNumlockHack.ahk. Поместите этот скрипт в папку C: \ Users \ \ AppData \ Roaming \ Microsoft \ Windows \ Меню Пуск \ Программы \ Автозагрузка.

Numlock:: if (!GetKeyState("NumLock", "T")) SetNumLockState, On return 
0
Brollie

Сделай таймер и назови его NumlOn. Установите интервал на 100.

Public Const VK_NUMLOCK = &H90 Declare Function GetKeyState Lib "user32" Alias "GetKeyState" _ (ByVal ByValnVirtKey As Integer) As Short Dim NLKey as boolean  Private Sub me_keyDown(ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown If e.KeyCode = Keys.NumLock And Not NLKey Then If Not GetKeyState(VK_NUMLOCK) Then e.Handled = True NumlOn.Start() Exit Sub End If End If End sub  Private Sub NumlOn_Tick(sender As Object, e As EventArgs) _  Handles NumlOn.Tick NLKey = True If Not GetKeyState(VK_NUMLOCK) Then numlockON() Application.DoEvents() NumlOn.Stop() NLKey = False End Sub 
Где мясо? Я полагаю, вы хотите использовать этот код в файле. Что тогда? Как вы используете его? Как это работает? Пожалуйста, не отвечайте в комментариях; [отредактируйте] ваш ответ, чтобы сделать его более понятным и полным. Scott 6 лет назад 1
0
brollie

Забыл саб ... Это полностью работает

Public Const VK_NUMLOCK = &H90 Declare Function GetKeyState Lib "user32" Alias "GetKeyState" _ (ByVal ByValnVirtKey As Integer) As Short  Private Sub numlockON() keybd_event(VK_NUMLOCK, 0, 0, 0) ' Press NUMLOCK key down keybd_event(VK_NUMLOCK, 0, KEYEVENTF_KEYUP, 0) End Sub  Private Sub me_keyDown(ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.KeyEventArgs) Handles Me.KeyDown If e.KeyCode = Keys.NumLock And Not NLKey Then If Not GetKeyState(VK_NUMLOCK) Then e.Handled = True NumlOn.Start() Exit Sub End If End If End sub  Private Sub NumlOn_Tick(sender As Object, e As EventArgs) Handles NumlOn.Tick NLKey = True If Not GetKeyState(VK_NUMLOCK) Then numlockON() Application.DoEvents() NumlOn.Stop() NLKey = False End Sub 
Добро пожаловать в Супер пользователя. Вместо того, чтобы публиковать несколько ответов, просто исправьте предыдущий ответ и удалите его или удалите, если он требует изменений в этом ответе. Кроме того, что сказал Скотт на ваш другой ответ. fixer1234 6 лет назад 1

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