如何获取VB.NET中的Caps Lock的当前状态?
时间:2020-03-05 18:52:12 来源:igfitidea点击:
如何使用VB.NET确定是否激活了Caps Lock?
这是我先前提出的问题的后续措施。
解决方案
回答
我不是VB.NET的专家,所以我只想到PInvoke:
Declare Function GetKeyState Lib "user32" Alias "GetKeyState" (ByValnVirtKey As Int32) As Int16 Private Const VK_CAPSLOCK = &H14 If GetKeyState(VK_CAPSLOCK) = 1 Then ...
回答
http://msdn.microsoft.com/zh-CN/library/system.windows.forms.control.iskeylocked.aspx
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 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."); } } }