c# - 在 WPF 中设置鼠标位置

标签 c# wpf kinect

<分区>

我打算用 Kinect 手势替换我的鼠标,但我找不到为 WPF 应用程序设置鼠标位置的方法。

最佳答案

使用 .NET BCL 是不可能的。但是,如果您真的需要它,您可以在 User32.dll 中使用 native SetCursorPos

[DllImport("User32.dll")]
private static extern bool SetCursorPos(int x, int y);

正如其他人很可能会指出的那样,您可以使用 System.Windows.Forms 实现相同的目的,但是在开发 WPF 应用程序时更喜欢使用 DllImport


如果你打算在你的应用程序中使用 Kinect 传感器,我会亲自编写一个自定义 WPF 控件,而不是尝试覆盖系统鼠标:

  • 在使用 Kinect 显示用户意图时,您必须仔细考虑,例如,要选择一个选项,您会让用户将鼠标悬停在按钮上并在操作前显示计时器。
  • 您想要自定义视觉对象来表示屏幕上的位置,传统的光标是不够的。

在我今年早些时候参加的 X360 Kinect session 上,将近半天的时间用于管理用户体验,因为它不同于简单的点击交互。

如果您有兴趣,我可以上传/通过电子邮件发送 Kinect session 的幻灯片。他们是一本好书。

关于c# - 在 WPF 中设置鼠标位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8512651/

相关文章:

wpf - 如何解决这个 WPF 数据网格无限度量/排列错误?

image-processing - 是否可以保存用户的骨骼和面部数据以进行识别?

c# - 在子窗口在第三个窗口上使用 ShowDialog 后,主窗口消失在其他应用程序的窗口后面

c# - Object.Equals(obj, null) 和 obj == null 有什么区别

c# - 如何避免依赖注入(inject)构造函数的疯狂?

来自两个不同角度的两个视频文件的 3D 场景

c# - 平滑鼠标 move

c# - ASP.NET MVC 的最佳存储库模式

wpf - 依赖于其他属性的依赖属性

c# - 单击 WPF DataGrid 时如何修复 "unhandled exception"?