首页 新闻 会员 周边

关于键盘Ascii码和WPF里Key的对应关系

0
悬赏园豆:10 [已解决问题] 解决于 2015-06-12 16:41

偷了个懒做一些自己喜欢的小程序遇到一个问题

我在使用win api获取键盘对应的Ascii的时候可以正确的获取到键盘的Ascii码

如A = 65

然后在WPF进行判断的时候发现匹配的键不一直,F12一下才发现System.Windows.Input.Key下的枚举对应不是Ascii码,可以看到A的值为44.(非WinForm下Keys)

 

它们之间是否存在这进制的转换?求解怎样才获取到我要的结果...

澈澈的主页 澈澈 | 菜鸟二级 | 园豆:440
提问于:2015-06-12 16:18
< >
分享
最佳答案
1

KeyInterop.KeyFromVirtualKey

KeyInterop.VirtualKeyFromKey

收获园豆:10
Launcher | 高人七级 |园豆:45045 | 2015-06-12 16:30

ok,

感觉无所不知.

澈澈 | 园豆:440 (菜鸟二级) | 2015-06-12 16:35

还有一个问题想直接麻烦您一下,给个方向即可.

我在获取到按下的键以后我会在wpf里判断,难道我要A-Z每个都要进行一次判断么,感觉这样写很蠢...

if (KeyInterop.KeyFromVirtualKey(e.KeyData) == Key.A)
{
Akey.IsKeyDown = Visibility.Visible;
}

 

可以用什么设计模式或者反射?能给个简单的思路或者方向么

澈澈 | 园豆:440 (菜鸟二级) | 2015-06-12 17:00

@澈澈: 用 switch

Launcher | 园豆:45045 (高人七级) | 2015-06-12 18:09
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册