C#에서는 Console 클래스가 제공하는 속성을 활용하면 별도의 외부 라이브러리나 복잡한 WinAPI 호출 없이도 키보드의 Caps Lock과 Num Lock 상태를 간단하게 확인할 수 있습니다.
Caps Lock 상태 확인하기
Caps Lock이 켜져 있는지 꺼져 있는지 확인하려면 Console.CapsLock 속성을 사용합니다. 이 속성은 부울(Boolean) 값을 반환하며, Caps Lock이 활성화되어 있으면 true, 비활성화되어 있으면 false를 출력합니다.
예제 코드
using System;
public class Demo {
public static void Main(string[] args) {
Console.WriteLine("Caps Lock이 켜져 있습니까? " + Console.CapsLock);
}
}
실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Caps Lock이 켜져 있습니까? False
Num Lock 상태 확인하기
Num Lock의 켜짐/꺼짐 여부를 확인할 때는 Console.NumberLock 속성을 사용합니다. 마찬가지로 부울 값을 반환하여 현재 Num Lock의 활성화 상태를 알려줍니다.
예제 코드
using System;
public class Demo {
public static void Main(string[] args) {
Console.WriteLine("Num Lock이 켜져 있습니까? " + Console.NumberLock);
}
}
실행 결과
위 코드를 실행하면 다음과 같은 결과가 출력됩니다.
Num Lock이 켜져 있습니까? True
정리
이처럼 Console.CapsLock과 Console.NumberLock 속성을 사용하면 단 한 줄의 코드로 키보드 잠금 키의 현재 상태를 손쉽게 조회할 수 있습니다. 참고로 이 두 속성은 Windows 환경에서만 지원되므로, 크로스 플랫폼 애플리케이션을 개발할 때는 운영체제 호환성을 반드시 고려해야 합니다.