private void dataGridView1_CellMouseDoubleClick(object sender, DataGridViewCellMouseEventArgs e) { if (e.RowIndex < 0) { return; } exInfo = DAL.ExInfoDataFactory.Construct(exDT.Rows[e.RowIndex]); List <DAL.NIChannelSettingData> aiList = new List <DAL.NIChannelSettingData>(); aiNameList = exInfo.NI9188Mod.Split('|'); string strSQL = "select * from NIChannelSetting where ( "; foreach (string ai in aiNameList) { strSQL += "ID=" + ai + " OR "; } strSQL = strSQL.Substring(0, strSQL.Length - 4); strSQL += ")"; aidt = WFNetLib.ADO.SQLServerOP.DataTableSQL(strSQL); for (int i = 0; i < aidt.Rows.Count; i++) { DAL.NIChannelSettingData ai = DAL.NIChannelSettingDataFactory.Construct(aidt.Rows[i]); aiList.Add(ai); } strSQL = "select * from ExData where ExID=" + exInfo.ID.ToString(); exData = WFNetLib.ADO.SQLServerOP.DataTableSQL(strSQL); ExcelEx = new ExcelExport(exData.Rows.Count); ExcelEx.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc); ExcelEx.ExcelExportProc(); }
private void btExcel_Click(object sender, EventArgs e) { if (chart1.Series[0].Points.Count == 0) { MessageBox.Show("没有实验数据需要导出!"); return; } if (saveFileDialog2.ShowDialog() != DialogResult.OK) { return; } ee = new ExcelExport(chart1.Series[0].Points.Count); ee.bShowExcel = false; ee.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc); ee.ExcelExportProc(); MessageBox.Show("实验数据导出成功\r\n" + saveFileDialog2.FileName); }
private void button1_Click(object sender, EventArgs e) { if (radioButton1.Checked) { Rx1616 = new CP1616Packet(4, 1); byte[] tx = CP1616Packet.MakeCP1616Packet(4, 1, 1); COMPort1.Write(tx, 0, tx.Length); while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { ee = new ExcelExport(100); ee.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc); ee.ExcelExportProc(); break; } } catch { MessageBox.Show("读取数据失败"); break; } } } else if (radioButton2.Checked) { hl = new List <byte[]>(); se = new List <byte>(); er = new List <byte>(); progressBar1.Value = 0; int retry; bool bOK; for (int i = 0; i < 100; i++) { retry = 20; bOK = false; while (retry != 0) { Rx1616 = new CP1616Packet(5, 1); byte[] tx = CP1616Packet.MakeCP1616Packet(5, 1, (byte)i); try { COMPort1.Write(tx, 0, tx.Length); } catch { retry--; continue; } while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { // byte[] temp = new byte[Rx1616.Data.Length - 2]; // for (int j = 0; j < Rx1616.Data.Length - 2; j++) // { // temp[j] // } hl.Add(Rx1616.Data); se.Add((byte)(i + 1)); progressBar1.Value++; Thread.Sleep(100); bOK = true; break; } } catch { break; } } if (bOK) { break; } retry--; Thread.Sleep(1000); } if (retry == 0) { er.Add((byte)(i + 1)); } } if (se.Count != 0) { if (er.Count != 0) { string str = "如下传感器数据读取失败:\r\n"; for (int i = 0; i < er.Count; i++) { str += "第" + er[i].ToString() + "号传感器" + "\r\n"; } str += "是否继续保存"; if (MessageBox.Show(str, "读取错误", MessageBoxButtons.YesNo) == DialogResult.No) { return; } } ee = new ExcelExport(); ee.SheetCount = se.Count; ee.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc1); ee.ExcelExportProc1(); } else { MessageBox.Show("读取历史数据失败"); } } else if (radioButton3.Checked) { if (numericUpDown2.Value < numericUpDown1.Value) { MessageBox.Show("范围有误"); return; } hl = new List <byte[]>(); se = new List <byte>(); er = new List <byte>(); progressBar1.Value = 0; int per = (int)(numericUpDown2.Value - numericUpDown1.Value + 1); per = 100 / per; int retry; bool bOK; for (int i = (int)(numericUpDown1.Value - 1); i < (int)numericUpDown2.Value; i++) { retry = 20; bOK = false; while (retry != 0) { Rx1616 = new CP1616Packet(5, 1); byte[] tx = CP1616Packet.MakeCP1616Packet(5, 1, (byte)i); try { COMPort1.Write(tx, 0, tx.Length); } catch { retry--; continue; } while (true) { try { if (Rx1616.DataPacketed((byte)COMPort1.ReadByte())) { // byte[] temp = new byte[Rx1616.Data.Length - 2]; // for (int j = 0; j < Rx1616.Data.Length - 2; j++) // { // temp[j] // } hl.Add(Rx1616.Data); se.Add((byte)(i + 1)); progressBar1.Value += per; Thread.Sleep(100); bOK = true; break; } } catch { break; } } if (bOK) { break; } retry--; Thread.Sleep(1000); } if (retry == 0) { er.Add((byte)(i + 1)); } } progressBar1.Value = 100; if (se.Count != 0) { if (er.Count != 0) { string str = "如下传感器数据读取失败:\r\n"; for (int i = 0; i < er.Count; i++) { str += "第" + er[i].ToString() + "号传感器" + "\r\n"; } str += "是否继续保存"; if (MessageBox.Show(str, "读取错误", MessageBoxButtons.YesNo) == DialogResult.No) { return; } } ee = new ExcelExport(); ee.SheetCount = se.Count; ee.ExcelWorkbookCallbackProc = new ExcelExport.ExcelWorkbookCallback(ExcelWorkbookCallbackProc1); ee.ExcelExportProc1(); } else { MessageBox.Show("读取历史数据失败"); } } }