使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

摘要

SetKeyboardState ()的檔會正確指出您無法使用這個 API 來切換 NUM LOCK、CAPS LOCK 和 SCROLL LOCK 鍵。您可以使用 keybd_event ()來切換 [Windows NT] 下的 [NUM LOCK]、[大寫鎖定] 和 [滾動鎖定] 鍵。 相同的技術可在 Windows 95 下切換大寫鎖定和滾動鎖,但不會對 NUM LOCK 起作用。

其他相關資訊

下列範例程式會將 NUM LOCK 燈開啟(如果它是關閉狀態)。 在此處定義的 SetNumLock 函數會使用 keybd_event ()與虛擬鍵 VK_NUMLOCK 來類比 NUM LOCK 鍵。 它會採用一個布林值來指示光線應該是關閉(FALSE)還是開啟(TRUE)。使用相同的技術,就可以使用 CAPS LOCK 鍵(VK_CAPITAL)和滾動鎖定鍵(VK_SCROLL)。

範例程式碼

   /* Compile options needed:   */    #include <windows.h>   void SetNumLock( BOOL bState )   {      BYTE keyState[256];      GetKeyboardState((LPBYTE)&keyState);      if( (bState && !(keyState[VK_NUMLOCK] & 1)) ||          (!bState && (keyState[VK_NUMLOCK] & 1)) )      {      // Simulate a key press         keybd_event( VK_NUMLOCK,                      0x45,                      KEYEVENTF_EXTENDEDKEY | 0,                      0 );      // Simulate a key release         keybd_event( VK_NUMLOCK,                      0x45,                      KEYEVENTF_EXTENDEDKEY | KEYEVENTF_KEYUP,                      0);      }   }   void main()   {      SetNumLock( TRUE );   }

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×