【发布时间】:2013-07-21 13:38:12
【问题描述】:
方法 SendKeys.Send 不允许按 Fn 键,该键存在于笔记本电脑的键盘上。如何在 C# 中模拟按下此键?
【问题讨论】:
-
我很确定你不能。我相信
fn键是硬件支持的。
方法 SendKeys.Send 不允许按 Fn 键,该键存在于笔记本电脑的键盘上。如何在 C# 中模拟按下此键?
【问题讨论】:
fn 键是硬件支持的。
你不能,你也不需要。就键盘电路而言,Fn 键仅作为键存在。
当键码被发送到操作系统时,功能键看起来就像是普通键盘上的普通键一样。操作系统甚至不知道Fn 键的存在,这是由笔记本电脑中的特殊键盘电路处理的。
要在笔记本电脑上按下功能键,只需像在普通键盘上一样发送功能键的常规键代码。
如果有任何其他使用Fn 键的组合键,它们要么有自己的键码,要么根本无法发送,因为它们是由笔记本电脑而不是操作系统处理的。
【讨论】:
我从未尝试过,但我认为你可以用另一种方式做到这一点。在textbox 上创建keydown 事件并在运行时按fn 键,然后检查code 或keyValue 返回的内容。然后在 SendKeys.Send 方法中使用 value。
【讨论】: