gpt4 book ai didi

c# - Kinect 自定义光标

转载 作者:太空宇宙 更新时间:2023-11-03 22:03:47 25 4
gpt4 key购买 nike

我需要在 Kinect 中制作一个光标,但我不知道从哪里开始。我需要使用 WPF 和 C# 来实现它。光标应该是手的形状,当我将鼠标悬停在元素上时,应该出现“加载”圆圈,当它“加载”时,它应该在悬停的元素上触发点击事件。我相信你们都对此很熟悉。

如果有人能给我写一些说明,告诉我如何完成这件事,那将会很有帮助。

最佳答案

这是一个可能对您有所帮助的代码片段:

using Microsoft.Research.Kinect.Nui;

Runtime nui = Runtime.Kinects[0];
nui.Initialize(RuntimeOptions.UseSkeletalTracking);
nui.SkeletonFrameReady += new EventHandler<SkeletonFrameReadyEventArgs>(nui_SkeletonFrameReady);

void nui_SkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
{
SkeletonFrame sf = e.SkeletonFrame;
SkeletonData d = (from s in sf.Skeletons
where s.TrackingState == SkeletonTrackingState.Tracked
select s).FirstOrDefault();

if (d != null)
{
SetHandPosition(imageCursor, d.Joints[JointID.HandLeft]);
}
}

void SetHandPosition(FrameworkElement e, Joint joint)
{
Joint scaledJoint = Coding4Fun.Kinect.Wpf.SkeletalExtensions.ScaleTo(joint, 600, 400, 0.75f, 0.75f);

Canvas.SetLeft(e, scaledJoint.Position.X);
Canvas.SetTop(e, scaledJoint.Position.Y);
}

如果您希望鼠标悬停在某个元素上时有所不同,则只需转到元素属性并为该元素设置一个光标。在 Visual Studio 中,您可以在元素属性中选择光标。

要点击鼠标悬停在元素上,您必须实现 MouseEnter 事件

private void button1_MouseEnter(object sender, MouseEventArgs e)
{
....
}

这里有一些关于它的信息:

button1.PerformClick() in wpf

关于c# - Kinect 自定义光标,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9167720/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com