【发布时间】:2014-08-23 01:19:04
【问题描述】:
我如何以编程方式知道是否需要在按住 Alt Gr 或 Shift 的文本框中输入像 '@' 这样的字符?
这是 Alt Gr 的列表:² ³ { [ ] } \ @ € ~ | µ
还有一个更长的 Shift 列表:°!"§$%&/()=?*'>;:_、字母等等
Char.IsUpper(...) 帮我写信。但是我该如何解决这个问题呢?我希望能够正确地检查它们,如果可能的话,我想让系统为我做。
最后我将通过keybd_event 发送这些击键。
(我使用 WinForms。)
【问题讨论】:
-
@KajalSinha 我使用 WinForms。不知道为什么这可能很重要。
-
模拟键盘输入来自动化 UI 从来都不是一个错误。如果您希望获得可靠的解决方案,请使用 UI Automation。
-
在一般情况下使用键显然不能工作,因为大多数字符甚至在大多数键盘布局上都不可用。比如遇到
ü但是键盘布局是美式的怎么办?如果输入需要死键怎么办?如果你真的需要使用按键,ALT+Number 是我唯一能想到的,但我不确定是否可以在代码 >255 的情况下使用它。 -
您的问题:“如何以编程方式在文本框中输入文本?” - 答案:“使用 UI 自动化。” - 您的回答:“答案是错误的,请支持我的问题,因为,好吧,你会看到我什么时候有时间完整地披露问题。”
-
@IInspectable “我如何以编程方式在文本框中输入文本?”不是我的问题。