Ist es möglich, die Num-Taste IMMER EINZUSCHALTEN, ohne dass sich die Num-Taste ausschalten lässt?


14

Bei dieser Frage geht es also nicht darum, die Num-Sperre standardmäßig zu aktivieren.

Ist es möglich, die Num-Taste zu aktivieren und die Funktion der Num-Taste auf der Tastatur zu deaktivieren, um diesen Zustand zu beeinflussen?

EDIT (weil):

In meiner Tastatur ist der HomeKnopf wirklich nah an der numlock. Bei der Arbeit benutze ich oft Homeund den Nummernblock, aber manchmal habe ich auch versehentlich getroffen numlock. Infolgedessen wird mein Nummernblock abgeschaltet, was wirklich zum Kotzen ist, wenn ich viele Zahlen eingeben muss, und nach einer Weile merke ich, dass ich nichts eingetippt habe, weil Numlock den Nummernblock abgeschaltet hat.


5
Entfernen Sie den Numlock-Schlüssel und bringen Sie den Schalter in die Ein-Position. Stecken Sie den Schlüssel wieder ein.
Moab

W-warum brauchst du das? just curious
Registrierter Benutzer

@RegisteredUser siehe meine Bearbeitung
Adam Varhegyi

Antworten:


5

Ich benutze CapShift und es ist kostenlos:

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

"CAPshift erweitert die Feststelltaste, indem es sie verlangsamt ...

  • Zum Aktivieren / Deaktivieren 0,5 Sekunden gedrückt halten.
  • Halten Sie 1 Sekunde lang gedrückt, um das Menü anzuzeigen.
  • Klicken Sie mit der rechten Maustaste auf das Taskleistensymbol, um das Menü anzuzeigen.
  • Verlangsamt auch F1, Insert, NumLock und ScrollLock. "

Der Vorteil ist: Sie verlieren nicht die Möglichkeit, NumLock zu ändern, wenn Sie es wirklich brauchen.


Hört sich gut an, aber das Installationsprogramm läuft nicht unter Windows 8.1: [
Adam Varhegyi

5

Entfernen Sie physisch den NumLock-Schlüssel. Wenn Ihr Finger darauf drückt, ist er nicht da.


Die kinderleichte Lösung.
Rohit Gupta

5
Es ist eigentlich nicht narrensicher. Einige Softwareprogramme (z. B. HyperV) können die Num-Sperre wieder deaktivieren. Wenn Sie die Taste von der Tastatur entfernt (oder SharpKeys verwendet) haben, müssen Sie herumspielen und neu starten, um sie wieder zu aktivieren.
StingyJack

3

Es ist möglich, es über eine Anwendung automatisch wieder einzuschalten (innerhalb weniger Millisekunden), wenn es ausgeschaltet wird.

Dieser Typ hat ein Autohotkey-Skript dafür erstellt, das er "Numlock Enforcer" nennt. Http://www.donationcoder.com/forum/index.php?topic=9018.0

Nicht die eleganteste Lösung, aber es sollte funktionieren.


1

Vielleicht nicht die Antwort, die Sie suchen, aber es hat das Problem für mich gelöst:

Aktivieren Sie den Sound für die Tastensperre in Windows (in Windows 10: Systemsteuerung \ Einfacher Zugriff \ Einfacher Zugriff auf das Center \ Erleichtern der Verwendung der Tastatur \ Aktivieren der Umschalttasten).

Auf diese Weise piept es, wenn Sie darauf schlagen, und Sie bemerken es sofort. Eigentlich hat es mich trainiert, es überhaupt nicht mehr zu treffen, weil das Signal richtig ist, wenn es passiert.


Gute Idee, mit eingebauter Funktionalität zu arbeiten!
Oliver

1

Wenn Sie Autohotkey verwenden, können Sie Ihrem Skript die folgende Zeile hinzufügen:

SetNumLockState, AlwaysOn

Stellen Sie sicher, dass diese Zeile vor Ihren Hotkeys steht. Ich habe es ganz am Anfang meines Skripts platziert, um sicherzustellen, dass es immer funktioniert. Wenn Sie es in der Mitte oder am Ende Ihres Skripts platzieren, funktioniert es möglicherweise nicht.


0

Das BIOS verfügt möglicherweise über eine Einstellung zum Deaktivieren des NumLock-Schlüssels, aber wir müssen Ihr Computermodell und Ihre BIOS-Version kennen, um dies genauer zu erläutern. In der Regel wird das BIOS gestartet und nach einem Element mit dem Namen "NumLock State", "Bootup NumLock State" oder ähnlichem gesucht. Drücken Sie die Eingabetaste, und wählen Sie mit den Pfeiltasten "Off" oder "Disabled" aus. Drücken Sie anschließend die Eingabetaste.

Für Windows-Hacker enthält die Registrierung HKCU\Control Panel\Keyboard ein Element mit dem Namen InitialKeyboardIndicators, das den undokumentierten Wert 1zum Deaktivieren von NumLock aufweist. Die Wirksamkeit kann je nach Windows-Version variieren.

Die brutale Lösung besteht darin, die Numlock-Tastenkappe abzunehmen und die Einstellung bei Bedarf mit einem Stift zu ändern. Die Einstellung bleibt normalerweise erhalten, da Windows XP und höher den Status über alle Startvorgänge hinweg speichern (es sei denn, das BIOS oder eine andere Einstellung stört).


0

Schritt 1

Ändern Sie die Registrierung, um den Anfangszustand von NumLock beim Start einzuschalten:

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

Schritt 2

Fügen Sie ein AutoHotkey-Skript hinzu, um den Schlüssel zu überwachen und sicherzustellen, dass er nicht deaktiviert werden kann. Installieren Sie AutoHotkey und erstellen Sie ein neues Skript mit dem Namen MyBestNumlockHack.ahk. Fügen Sie dieses Skript in das Verzeichnis C: \ Benutzer \ {Benutzername} \ AppData \ Roaming \ Microsoft \ Windows \ Startmenü \ Programme \ Startup ein.

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

0

Machen Sie einen Timer und nennen Sie ihn NumlOn. Stellen Sie das Intervall auf 100 ein.

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
Wo ist das Rindfleisch? Ich nehme an, Sie möchten diesen Code in eine Datei einfügen. Was dann? Wie benutzt man es? Wie funktioniert es? Bitte antworten Sie nicht in Kommentaren; Bearbeiten Sie Ihre Antwort, um sie klarer und vollständiger zu gestalten.
Scott

0

Ich habe ein Sub vergessen ... Das funktioniert voll

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
Willkommen bei Super User. Anstatt mehrere Antworten zu veröffentlichen, korrigieren Sie einfach die vorherige Antwort und löschen Sie diese oder löschen Sie diese, wenn Änderungen in dieser erforderlich sind. Auch, was Scott zu Ihrer anderen Antwort gesagt hat.
Fixer1234
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.