相关疑难解决方法(0)

如何编写本地化的屏幕键盘

我必须为我们公司的程序编写一个屏幕键盘,该程序主要用于具有触摸功能的工业PC.

我们无法使用Windows默认键盘,因为我们不需要键盘上的所有键.所以我被要求用C#写一个自定义的.

我已经发现这个博客作为参考,但我不知道如何开始.

我创建了一个小型原型GUI,为每个键分配一个扫描码,并将这些扫描码转换为相关的字符.并将它们发送到主动控件.但我不确定我应该使用哪种扫描码.

所以我的问题是,这是编写像这样的OSK的正确方法,如果是,我应该使用哪些扫描码?有链接吗?

我也不确定如何处理这些shift州......

编辑:

好吧,我做了一些研究,想出了一个osk,它读取当前的键盘布局,甚至可以处理简单的shift状态(ShiftAlt Gr).我写了一个KeyButton继承自的类Button,它KeyButton有一个ScanCodebyte类型的属性,如果你为它分配一个有效的扫描码,它KeyButton会调用相关的函数来获得正确的文本.我使用Michael Kaplan博客的功能进行了一些小改动.最后我发现我必须像他一样做.

所以我的问题的答案是:是的,您必须在按钮上使用扫描码,然后从键盘布局中获取虚拟键和unicode.使用这些扫描码.

现在我得到的角色唯一剩下的就是发送它们.

c# windows keyboard screen localized

5
推荐指数
1
解决办法
2682
查看次数

标签 统计

c# ×1

keyboard ×1

localized ×1

screen ×1

windows ×1