È possibile avere il Blocco numerico SEMPRE ATTIVO, senza la possibilità di disattivare il tasto Blocco numerico?


14

Quindi questa domanda non riguarda l'attivazione del blocco numerico per impostazione predefinita.

È possibile attivare il blocco numerico e rimuovere la capacità del pulsante blocco numerico sulla tastiera di influenzare quello stato?

MODIFICA (perché):

Nella mia tastiera il Homepulsante è molto vicino al numlock. Al lavoro uso spesso Homee il tastierino numerico, ma a volte colpisco numlockanche accidentalmente . Di conseguenza il mio tastierino numerico viene disattivato, il che fa davvero schifo quando devo digitare molti numeri e dopo un po 'mi rendo conto di non aver digitato nulla perché il blocco numerico ha disattivato il tastierino numerico.


5
rimuovere il tasto di blocco numerico ed epossidare l'interruttore in posizione acceso, riaccendere il tasto.
Moab,

Perché dovresti averne bisogno? solo curioso
Utente registrato

@RegisteredUser guarda la mia modifica
Adam Varhegyi,

Risposte:


5

Uso CapShift ed è gratuito:

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

"CAPshift estende il tasto BLOC MAIUSC rallentandolo ...

  • Tenere premuto per 0,5 secondi per abilitare / disabilitare.
  • Tenere premuto per 1 secondo per visualizzare il menu.
  • Fare clic con il tasto destro sull'icona della barra delle applicazioni per visualizzare il menu.
  • Rallenta anche F1, Insert, NumLock e ScrollLock. "

Il vantaggio è: non perdere la possibilità di cambiare NumLock se è davvero necessario.


Sembra buono ma il programma di installazione non funziona su Windows 8.1: [
Adam Varhegyi,

5

Rimuovere fisicamente la chiave NumLock. Quando il dito va a premerlo, non ci sarà.


La soluzione infallibile.
Rohit Gupta,

5
In realtà non è infallibile. Alcuni software (ad esempio HyperV) possono disattivare di nuovo il blocco numerico e quando hai rimosso il tasto dalla tastiera (o hai utilizzato SharpKeys) devi scherzare e riavviare per riaccenderlo.
StingyJack,


1

Forse non è la risposta che stai cercando, ma ha risolto quel problema per me:

Attiva l'audio per i tasti di blocco in Windows (in Windows 10: Pannello di controllo \ Accesso facilitato \ Centro accesso facilitato \ Semplifica l'utilizzo della tastiera \ Attiva Attiva / disattiva tasti)

In questo modo, quando lo colpisci, emette un segnale acustico e te ne accorgi subito. In realtà mi ha insegnato a non colpirlo più, perché il segnale è giusto quando succede.


Bella idea, lavorare con funzionalità integrata!
Oliver,

1

Se usi Autohotkey, puoi aggiungere la seguente riga allo script:

SetNumLockState, AlwaysOn

Assicurati di mettere questa linea prima dei tasti di scelta rapida. L'ho messo all'inizio della mia sceneggiatura, quindi mi assicuro che funzioni sempre bene, se lo metti nel mezzo o alla fine della tua sceneggiatura, potrebbe non funzionare.


0

Il BIOS potrebbe avere un'impostazione per disabilitare la chiave NumLock, ma è necessario conoscere il modello del computer e la versione del BIOS per discuterne in modo più approfondito. In genere, si avvia nel BIOS e cerca un elemento chiamato "NumLock State", "Boot NumLock State" o simile, premere Invio e utilizzare i tasti freccia per selezionare "Off" o "Disabilitato", quindi premere Invio.

Per gli hacker di Windows, il registro contiene in HKCU\Control Panel\Keyboard un elemento chiamato InitialKeyboardIndicators che ha il valore non documentato di 1disabilitare NumLock. La sua efficacia può variare in base alla versione di Windows.

La brutale soluzione è quella di togliere il cappuccio del tasto Numlock e usare una penna per cambiare la sua impostazione quando richiesto. L'impostazione si bloccherà normalmente, poiché Windows XP e successivamente ricordano il suo stato tra gli stivali (a meno che il BIOS o altre impostazioni non interferiscano).


0

Passo 1

Modificare il registro per impostare lo stato iniziale di NumLock su on all'avvio:

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

Passo 2

Aggiungi uno script AutoHotkey per monitorare la chiave e assicurarti che non possa essere disattivata. Installa AutoHotkey e crea un nuovo script chiamato MyBestNumlockHack.ahk. Inserisci questo script nella directory C: \ Users \ {Nome utente} \ AppData \ Roaming \ Microsoft \ Windows \ Menu \ Programmi \ Startup.

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

0

Crea un timer e chiamalo NumlOn. Imposta l'intervallo su 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
Dov'è la bistecca? Suppongo che tu voglia utilizzare per inserire questo codice in un file. Cosa poi? Come lo usi? Come funziona? Si prega di non rispondere nei commenti; modifica la tua risposta per renderla più chiara e completa.
Scott,

0

Hai dimenticato un sub ... Funziona perfettamente

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
Benvenuto in Super User. Invece di pubblicare più risposte, correggi semplicemente la risposta precedente ed elimina questa, oppure elimina quella se ha bisogno di modifiche in questa. Inoltre, quello che Scott ha detto sull'altra tua risposta.
fixer1234
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.