读书人

C#中timer的用法。生手求教

发布时间: 2013-01-20 10:22:40 作者: rapoo

C#中timer的用法。。。新手求教
我一开始的程序
private void SensorSkeletonFrameReady(object sender, SkeletonFrameReadyEventArgs e)
{
Skeleton[] skeletons = new Skeleton[0];

using (SkeletonFrame skeletonFrame = e.OpenSkeletonFrame())
{

if (skeletonFrame == null) return;

skeletons = new Skeleton[skeletonFrame.SkeletonArrayLength];

skeletonFrame.CopySkeletonDataTo(skeletons);
Skeleton skeleton = skeletons.Where(s => s.TrackingState == SkeletonTrackingState.Tracked).FirstOrDefault();
if (skeleton != null)
{

// Obtain the left knee joint;
Joint j = skeleton.Joints[JointType.KneeLeft] ;

if (j.TrackingState == JointTrackingState.Tracked)
{
float a = j.Position.X;
float b = j.Position.Y;
float c = j.Position.Z;
}
}
}
}
得到的a,b,c是三个坐标。我想用timer控件,在一段时间后再次执行上面的程序,得到新的坐标A,B,C.然后比较坐标有没有变化。。。
求大神指教。。。
[解决办法]
1、将abc设置为全局变量
2、添加time控件,然后设置时间间隔
3、在time的默认事件中写获得坐标与比较的代码
[解决办法]

引用:
引用:没有必要用锁的
System.Timers.Timer t =
new System.Timers.Timer(10000);


//实例化Timer类,设置间隔时间为10000毫秒;
t.Elapsed +=
new System.Timers.ElapsedEventHandler(theo……


建议用这个 就内存效率来讲

读书人网 >C#

热点推荐