gpt4 book ai didi

c# - 大写锁定检测 - Windows 10 与 Windows 10 Mobile - C#

转载 作者:行者123 更新时间:2023-11-30 21:52:40 24 4
gpt4 key购买 nike

我需要检测 CapsLock 键是否被锁定(激活),但是当我尝试这样做时:

public void CapsLockStatus()
{
if ((CoreWindow.GetForCurrentThread().GetKeyState(VirtualKey.CapitalLock) &
CoreVirtualKeyStates.Locked) != 0)
{
//true -> Caps Lock is enable;
}
else
{
//false -> Caps Lock is disable;
}
}

在 Windows 10 桌面版中,它工作正常,但在 Windows 10 移动版中却不行。我尝试用 "GetAsyncKeyState" 替换 "GetKeyState" 但问题仍然存在。

有什么问题?有人帮帮我吗?

谢谢

最佳答案

This code, in Windows 10 Desktop, are fine, work perfectly, but in widows 10 mobile not

实际上,Windows 10 Mobile OS 的虚拟键盘中并没有 CapsLock 键,如果我们需要确保输入大写字母,只需按两次 Shirt 键即可。所以在这种情况下你无法检测到它。

enter image description here

下一个问题是,为什么要在UWP移动应用中检测CapsLock键?唯一可能的场景是输入密码和提醒用户,但据我们所知,手机上的用户体验与PC上的用户体验不同,如果用户按两次Shift键,他/她将请注意此更改,因为虚拟键盘占用了大量屏幕空间。

如果您确实需要这样做,请考虑使用 CoreWindow.CharacterReceived事件来检测当前的 KeyCode,以检查用户是否键入了大写字母。参见 my answer in this case

关于c# - 大写锁定检测 - Windows 10 与 Windows 10 Mobile - C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34611871/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com