public void Notify(Exam.Exam exam) { if (!exam.Passed) { //若要改变出错时模型车位置,请调整此处代码。 //可再为每种ResultType添加switch(exam.Message.Index), //以细化针对不同杆线错误时,模型车的位置 switch (exam.Message.TypeOfResult) { case ResultType.Gan: che.SetWeizhi(gan[exam.Message.Index].X, gan[exam.Message.Index].Y); break; case ResultType.Xian: switch (exam.Message.Index) { case 0: case 2: che.SetWeizhi(xian[exam.Message.Index].X1, che.Y); break; case 1: case 3: case 4: che.SetWeizhi(che.X, xian[exam.Message.Index].Y1); break; } break; case ResultType.ZT: che.SetWeizhi(che.X, che.Y); break; case ResultType.XH: che.SetWeizhi(che.X, che.Y); break; case ResultType.LXC: che.SetWeizhi(che.X, che.Y); break; case ResultType.TimeOut: che.SetWeizhi(che.X, che.Y); break; default: break; } } }
public void Notify(Exam.Exam exam) { if (!exam.Passed) { //若要改变出错时模型车位置,请调整此处代码。 //可再为每种ResultType添加switch(exam.Message.Index), //以细化针对不同杆线错误时,模型车的位置 switch (exam.Message.TypeOfResult) { case ResultType.Gan: che.SetWeizhi(gan[exam.Message.Index].X, gan[exam.Message.Index].Y); break; case ResultType.Xian: switch (exam.Message.Index) { case 0: case 2: che.SetWeizhi(xian[exam.Message.Index].X1, che.Y); break; case 1: case 3: case 4: che.SetWeizhi(che.X, xian[exam.Message.Index].Y1); break; } break; case ResultType.ZT: che.SetWeizhi(che.X, che.Y); break; case ResultType.XH: che.SetWeizhi(che.X, che.Y); break; case ResultType.LXC: che.SetWeizhi(che.X, che.Y); break; case ResultType.TimeOut: che.SetWeizhi(che.X, che.Y); break; default: break; } } CMonData data = monitor.CurrData; CSignals g = data.GetSignals(SignalType.GAN); for (int i = 0; i < 5; i++) { gan[i].Stat = g[i]; } CSignals x = data.GetSignals(SignalType.XIAN); for (int i = 0; i < 5; i++) { xian[i].Stat = x[i]; } if (this.picBoxModelBackGround.InvokeRequired) { NotifyDelegate doNotify = new NotifyDelegate(DoNotify); this.picBoxModelBackGround.Invoke(doNotify); } else { DoNotify(); } }