How do I find out whether or not Caps Lock is activated, using VB.NET?
This is a follow-up to my earlier question.
Detect if Caps Lock is On Try to press the "Caps Lock" key inside the input field: WARNING! Caps lock is ON.
How to tell whether Caps Lock is on. If you pressed the Caps Lock key, you can turn it off by pressing the key again. Many keyboards have a built-in status indicator that lights up when the Caps Lock key is on. This LED is located either directly on the key or on the status bar of the keyboard, if there is one.
The green LED on the key is lit, indicating that Caps Lock is on.
A keyboard key that toggles upper case on and off. When the Caps Lock key is on, pressing any key automatically delivers the shifted version of the key, except for numeric digits, periods, commas, slashes and backslashes.
Control.IsKeyLocked(Keys) Method - MSDN
Imports System
Imports System.Windows.Forms
Imports Microsoft.VisualBasic
Public Class CapsLockIndicator
Public Shared Sub Main()
if Control.IsKeyLocked(Keys.CapsLock) Then
MessageBox.Show("The Caps Lock key is ON.")
Else
MessageBox.Show("The Caps Lock key is OFF.")
End If
End Sub 'Main
End Class 'CapsLockIndicator
C# version:
using System;
using System.Windows.Forms;
public class CapsLockIndicator
{
public static void Main()
{
if (Control.IsKeyLocked(Keys.CapsLock)) {
MessageBox.Show("The Caps Lock key is ON.");
}
else {
MessageBox.Show("The Caps Lock key is OFF.");
}
}
}
I'm not an expert in VB.NET so only PInvoke comes to my mind:
Declare Function GetKeyState Lib "user32"
Alias "GetKeyState" (ByValnVirtKey As Int32) As Int16
Private Const VK_CAPSLOCK = &H14
If GetKeyState(VK_CAPSLOCK) = 1 Then ...
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With