using System; using System.Collections; using System.Windows.Forms; namespace OTSMeasureApp { public partial class MeasureCheckResultInfoWindow : Form { public string endTime = ""; //国际化 OTSCommon.Language lan; Hashtable table; public MeasureCheckResultInfoWindow() { InitializeComponent(); CheckForIllegalCrossThreadCalls = false; //国际化 lan = new OTSCommon.Language(this); table = lan.GetNameTable(this.Name); } /// /// 测量状态 /// /// /// /// public void SetMeasureStateInfo(string MeasureState,int completeSampleCount, int completeFieldCount, int particleCount, string beginTime, TimeSpan MsrUsedTime, string endTime,ref string measureTimes) { //设置测量状态 lblMeasureState.Text = MeasureState; //设置开始时间 lblBeginTime.Text = beginTime.ToString(); //设置结束时间 lblEndTime.Text = endTime.ToString(); //测量数 lblMeasureCount.Text = completeSampleCount.ToString(); //设置当前帧图数 lblSingleCount.Text = completeFieldCount.ToString(); //设置颗粒数量 lblParticleCount.Text = particleCount.ToString(); //开始与截至时间 相差时间 //TimeSpan tsSub = MsrUsedTime; TimeSpan tsSub = TimeSpans(Convert.ToDateTime(beginTime), Convert.ToDateTime(endTime)); //为差值显示例准确,于此计算但数值不一定为真实值并且与domeasure中差值会出现不一致 //设置测量时间 string measureTime = string.Empty; if (tsSub.Days > 0) { string str= table["str1"].ToString(); measureTime += tsSub.Days + str; } if (tsSub.Hours > 0) { string str = table["str2"].ToString(); measureTime += tsSub.Hours + str; } if (tsSub.Minutes > 0) { string str = table["str3"].ToString(); measureTime += tsSub.Minutes + str; } if (tsSub.Seconds > 0) { string str = table["str4"].ToString(); measureTime += tsSub.Seconds + str; } measureTimes = measureTime; //默认值 if (measureTime.Equals("")) { string str = table["str5"].ToString(); lblMeasureTime.Text = str; } else { lblMeasureTime.Text = measureTime; } } public TimeSpan TimeSpans(DateTime beginTime ,DateTime endTime) { //c#对时间差,有一个专门的类进行封装,TimeSpan.cs; System.DateTime pauseT = beginTime; System.DateTime resumeT = endTime; System.TimeSpan ts1 = new System.TimeSpan(pauseT.Ticks); System.TimeSpan ts2 = new System.TimeSpan(resumeT.Ticks); System.TimeSpan tsSub = ts1.Subtract(ts2).Duration(); return tsSub; } private void MeasureCheckReportInfoWindow_FormClosing(object sender, FormClosingEventArgs e) { this.Close(); } public void SetEndTime(string endTime) { lblEndTime.Text = endTime; } private void MeasureCheckReportInfoWindow_Load(object sender, EventArgs e) { } } }