我現(xiàn)在這個筆記本電腦沒有NumLock指示燈,有時候用小鍵盤經(jīng)常打不出數(shù)字來,非?鄲。
尤其Caps和Scroll鍵狀態(tài)對我來說不需要,我不想為此多花費一丁點CPU資源:)
因此自己做了一個功能專一的小工具~
軟件運行后就會在右下角顯示一個圖標,對號是開,叉號是關(guān),沒有界面,只有圖標,不能多開。
NumLock狀態(tài)變化時可以實時顯示,鼠標點擊圖標就可以退出程序。
開發(fā)介紹:
Winform做的,.net framework 版本是2.0,上面的是Release版本,內(nèi)存占用大約10M,CPU占用可以忽略……
該軟件需要在 .Net 環(huán)鏡下才能運行,請安裝 .NET Framework V2.0 可再發(fā)行組件包: http://m.elephantinaurance.com/soft/2572.html
Numlock介紹:
Num,是Number(數(shù)字)的縮寫。 lock是鎖的意思。Numlock,就是指鎖住數(shù)字。(鎖定/解鎖小鍵盤)如果在鍵盤上取消Numlock鍵,那么無法使用小鍵盤上面的數(shù)字。numlock按鍵燈亮?xí)r,可以使用小鍵盤上的數(shù)字,如果熄滅時則不能使用。
核心邏輯:
需要在NumLock鍵按下的時候?qū)崟r捕捉到變化,因此下了全局鉤子;
但是卻不可以通過按鍵來判斷狀態(tài)的變化(鍵盤鍵位的按下和彈起對NumLock狀態(tài)的變化影響情況比較復(fù)雜),
還是要讀鍵盤碼狀態(tài)比較穩(wěn)定,因此還需要有一個循環(huán)去讀。
但是循環(huán)一直進行,在性能方面不是好的思路,因為很多時候大家都不會去按NumLock。
循環(huán)空轉(zhuǎn)是不好的,因此我是在鉤子捕捉到NumLock按下的時候馬上啟動一個持續(xù)4秒的循環(huán),每秒讀50次狀態(tài)(絕對夠精準了……)。