我有一个Kinect应用程序的两个部分我正在制作。有一个WPF菜单,最终将用户引导到XNA游戏。
问题是我使用的WPF控件(如KinectRegion)正在向KinectSensor对象上的AllFramesReady等事件添加事件侦听器。一旦我尝试在我的XNA游戏中轮询骨架数据,我就会收到以下错误:
This API cannot be called when an event listener has been set
我的问题:我如何重置KinectSDK中的所有内容,以便在启动XNA游戏时有一个干净的名单?或者至少,让它进入一个我可以成功轮询骨架数据的状态。
我不知道WPF控件附加什么方法来处理事件,因此我无法从事件中明确删除它们。
答案 0 :(得分:0)
您无法一次使用事件处理程序和轮询方法。 Kinect API不支持这一点。更好的方法是使用全局变量作为轮询方法,并在任何你想要的地方使用它。