【问题标题】:How can I access my trackpad in C#?如何在 C# 中访问我的触控板?
【发布时间】:2010-12-04 23:02:42
【问题描述】:

这个周末我很无聊。

我决定构建一个莫尔斯电码应用程序,我可以在其中使用触控板点击莫尔斯电码并让我的应用程序发出声音。

我告诉过你我很无聊! :D

在 C# 中是否有一些事实上的方式来访问触控板?我的意思是使用压力图。谢谢!

【问题讨论】:

    标签: c# trackpad pressure


    【解决方案1】:

    我不是 100% 熟悉触控板的概念,但我假设您正在使用的机器是笔记本电脑,而您所指的是其他所谓的“鼠标板”。

    您至少可以在 Windows 中做几件事。当您用手指点击时,您实际上是在向 Windows 运行时发送“点击”事件。如果你持有

    在 .NET 中,任何继承自 System.Windows.Forms.Control 的对象(Forms/UserControls)都可以订阅以下事件:

    • 鼠标按下
    • 上鼠标
    • 鼠标输入
    • 鼠标离开
    • 鼠标点击
    • 鼠标双击

    您可以对 MouseUp 和 MouseDown 事件之间的时间差进行计时,并对产生的时间跨度范围做出反应。例如,如果您按住鼠标 20 毫秒,那么这是一些莫尔斯电码字符,而按住鼠标 40 毫秒则是其他字符。

    对于鼠标垫/触控板,这相当于将您的手指放在触控板上。

    【讨论】:

    • 你把你的术语弄混了。 “鼠标垫”是一块覆盖有织物的泡沫,您可以将鼠标放在上面(现在的光学鼠标基本上已经过时了)。 en.wikipedia.org/wiki/Mousepad “触控板”是您通过触摸操作的鼠标替代品(也称为“触控板”)。 en.wikipedia.org/wiki/Touchpad
    【解决方案2】:

    一些选项卡驱动程序使用鼠标输入消息额外信息来发送额外信息。我认为 WACOM 这样做是为了发送笔压。

    可以使用GetMessageExtraInfo Function查询此信息

    也许您应该检查一下您的平板电脑是否有什么有趣的地方,但它可能是特定于供应商的,是否有任何不确定的东西可用。

    【讨论】:

    • 关于GetMessageExtraInfo 历史的一些有趣(但可能对 Serg 的任务没有帮助)信息发布在 Raymond Chen 的博客上。 View here 。好吧,Serg 说他很无聊,所以至少很有趣 :)
    猜你喜欢
    • 1970-01-01
    • 2010-11-18
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多