Чи можливо ВКЛЮЧЕННЯ Num Lock ВИМКНЕНО, без можливості вимкнення клавіші Num Lock?


14

Тому це питання не стосується включення num lock за замовчуванням.

Чи можна увімкнути num lock і зняти можливість кнопки num lock на клавіатурі впливати на цей стан?

EDIT (тому, що):

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


5
вийміть клавішу numlock і епоксидно перемикач у положення увімкнено, знову ввімкніть клавішу.
Моав

Ч-навіщо вам це потрібно? просто цікаво
Зареєстрований користувач

@RegisteredUser дивіться мою редакцію
Adam Varhegyi

Відповіді:


5

Я використовую CapShift, і це безкоштовно:

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

"CAPshift розширює клавішу Caps Lock, сповільнюючи її ...

  • Увімкніть 0,5 секунди, щоб увімкнути / відключити.
  • Утримуйте кнопку 1 секунду, щоб показати меню.
  • Клацніть правою кнопкою миші значок лотка, щоб відобразити меню.
  • Також сповільнює F1, Insert, NumLock та ScrollLock. "

Перевага полягає в тому, що ви не втрачаєте можливості змінити NumLock, якщо вам це дійсно потрібно.


Звучить добре, але інсталятор не працює в Windows 8.1: [
Адам Варгегій

5

Фізично видаліть клавішу NumLock. Коли ваш палець піде натиснути його, його там не буде.


Нерозумне рішення.
Рохіт Гупта

5
Насправді це не дурно. Деяке програмне забезпечення (наприклад, HyperV) може знову відключити дімблок, і коли ви вилучили клавішу з клавіатури (або використали SharpKeys), вам доведеться обдурити і перезавантажити, щоб відновити її.
StingyJack

3

Можна автоматично ввімкнути його (протягом декількох мілісекунд), коли воно вимкнеться, за допомогою програми.

Цей хлопець створив для нього сценарій автоматичної клавіші, який він називає "Numlock Enforcer" http://www.donationcoder.com/forum/index.php?topic=9018.0

Не для самого елегантного рішення, але воно має працювати.


1

Може не відповідь, яку ви шукаєте, але вона вирішила цю проблему для мене:

Активуйте звук для клавіш блокування у Windows (у Windows 10: Панель управління \ Легкість доступу \ Центр простоти доступу \ Полегшіть використання клавіатури \ Увімкніть перемикання клавіш)

Таким чином, коли ти його вдариш, він подає звуковий сигнал, і ти це відразу усвідомиш. Це насправді навчило мене взагалі більше не влучати його, бо сигнал правильний, коли це відбувається.


Приємна ідея, робота з вбудованою функціональністю!
Олівер

1

Якщо ви використовуєте функцію автоматичної клавіші, ви можете додати до свого сценарію такий рядок:

SetNumLockState, AlwaysOn

Обов’язково поставте цей рядок перед гарячими клавішами. Я розміщую його на самому початку мого сценарію, тому переконуюсь, що він завжди працює добре, якщо ви поставите його в середині або в кінці вашого сценарію, він може не працювати.


0

У BIOS може бути налаштування відключення ключа NumLock, але нам потрібно знати вашу комп'ютерну модель та BIOS-версію, щоб більш детально обговорити це. Як правило, один завантажується в BIOS і шукає елемент під назвою "NumLock State", "Bootup NumLock State" або подібний, натисніть Enter і за допомогою клавіш зі стрілками виберіть "Off" або "Disabled", а потім натисніть Enter.

Для хакерів Windows, реєстр містить HKCU\Control Panel\Keyboard елемент, який називається InitialKeyboardIndicators, який має незадокументоване значення 1для відключення NumLock. Його ефективність може змінюватися залежно від версії Windows.

Жорстоке рішення - зірвати кришку клавіші Numlock і використовувати ручку, щоб змінити її налаштування, коли потрібно. Налаштування зазвичай зберігається, оскільки Windows XP і пізніше запам'ятовують його стан у черевиках (якщо не заважає BIOS або інші налаштування).


0

Крок 1

Змініть реєстр, щоб встановити початковий стан NumLock на включений при запуску:

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

Крок 2

Додайте скрипт AutoHotkey, щоб контролювати ключ та переконайтесь, що його не можна вимкнути. Встановіть AutoHotkey та створіть новий сценарій під назвою MyBestNumlockHack.ahk. Помістіть цей скрипт у свій C: \ Users \ {Ім'я користувача} \ AppData \ Роумінг \ Microsoft \ Windows \ Меню Пуск \ Програми \ Запуск.

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

0

Зробіть таймер і назвіть його 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

3
Де яловичина? Я вважаю, що ви хочете, щоб цей код був використаний у файл. Що потім? Як ти ним користуєшся? Як це працює? Будь ласка, не відповідайте на коментарі; відредагуйте свою відповідь, щоб зробити її більш зрозумілою та повною.
Скотт

0

Забув підвід ... Це повністю працює

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

1
Ласкаво просимо до Супер Користувача. Замість того, щоб публікувати декілька відповідей, просто виправте попередню відповідь та видаліть її, або видаліть її, якщо вона потребує змін у цій. Також те, що сказав Скотт на вашу іншу відповідь.
fixer1234
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.