/// <summary> /// 保存Seal 和 Sheet 图片至指定目录 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void saveToolStripMenuItem_Click(object sender, EventArgs e) { string savePath = ProgramData.SysPara.ImgSavePath + "\\" + dateTimePicker_SearchTime.Value.ToString("yyyyMMdd") + "\\"; //检测选择是否为空 GlassInfo glassInfo = comboBox_GlassIDList.SelectedItem as GlassInfo; if (glassInfo.Id == ProgramData.SelectTips) { return; } //检测保存目录是否存在 if (!Directory.Exists(savePath)) { Directory.CreateDirectory(savePath); } //保存Seal图片 if (!SealImgMat.IsEmpty) { string sealFileName = savePath + glassInfo.Id + "_" + ProgramData.SealStr + ProgramData.ImgSuffix; SealImgMat.Save(sealFileName); } //保存Sheet图片 if (!SheetImgMat.IsEmpty) { string sealFileName = savePath + glassInfo.Id + "_" + ProgramData.SheetStr + ProgramData.ImgSuffix; SheetImgMat.Save(sealFileName); } }
/// <summary> /// 刷新GlassInfo /// </summary> /// <param name="glassInfo"></param> private void RefreshGlassInfo(GlassInfo glassInfo) { textBox_CreateTime.Text = glassInfo.CreateTime; textBox_EQ00.Text = glassInfo.Equip00_ID; textBox_EQ01.Text = glassInfo.Equip01_ID; textBox_Point1X.Text = glassInfo.Point1.X.ToString(); textBox_Point1Y.Text = glassInfo.Point1.Y.ToString(); textBox_Point2X.Text = glassInfo.Point2.X.ToString(); textBox_Point2Y.Text = glassInfo.Point2.Y.ToString(); textBox_Point3X.Text = glassInfo.Point3.X.ToString(); textBox_Point3Y.Text = glassInfo.Point3.Y.ToString(); textBox_Point4X.Text = glassInfo.Point4.X.ToString(); textBox_Point4Y.Text = glassInfo.Point4.Y.ToString(); }
/// <summary> /// 保存SheetImg至选择目录 /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void SaveSheetPicToolStripMenuItem_Click(object sender, EventArgs e) { //检测选择是否为空 GlassInfo glassInfo = comboBox_GlassIDList.SelectedItem as GlassInfo; if (glassInfo.Id == ProgramData.SelectTips) { MessageBox.Show("Not Select Glass!"); return; } //保存Sheet图片 if (!SealImgMat.IsEmpty) { SaveFileDialog saveFileDialog = new SaveFileDialog(); saveFileDialog.Filter = "Picture |*.jpg;*.png;*.gif;*.jpeg;*.bmp"; saveFileDialog.FilterIndex = 2; saveFileDialog.RestoreDirectory = true; if (saveFileDialog.ShowDialog() == DialogResult.OK) { SheetImgMat.Save(saveFileDialog.FileName); } } }
/// <summary> /// 读取Glassinfo,参数Filename,不含后缀 /// </summary> /// <param name="filepath"></param> public static void ReadGlassInfo(string fileName) { SysPara.GlassInfos.Clear(); SysPara.GlassInfos = new List <GlassInfo>(); if (SysPara.SourcePath == "Not Config") { //MessageBox.Show("Please config the Retrieving Source Catalogue!"); //MessageBox.Show("Please config the Source Path!"); MessageBox.Show("Please config the Source Path!", "Tips", MessageBoxButtons.OK, MessageBoxIcon.None, MessageBoxDefaultButton.Button1, MessageBoxOptions.ServiceNotification); return; } string filePath = GlassInfoPath + fileName + ".dat"; FileInfo fileInfo = new FileInfo(filePath); if (!Directory.Exists(fileInfo.DirectoryName)) { Directory.CreateDirectory(fileInfo.DirectoryName); LogNet.WriteInfo("ReadGlassInfo():Create Directory!"); } if (File.Exists(filePath)) { SysPara.GlassInfos = (List <GlassInfo>)CommonMethod.GetDataFromFile(filePath); } //扫描文件目录 string SearchPath = SysPara.SourcePath + "\\" + fileName; List <DirectoryInfo> GlassIDListDirectory = CommonMethod.GetFilePath(SearchPath); List <FileInfo> GlassIDCsvList = CommonMethod.GetFile(SearchPath, TextSuffix); //提取数据 if (SysPara.GlassInfos.Count != GlassIDListDirectory.Count)//数据不相等 { foreach (var o in GlassIDListDirectory) { if (SysPara.GlassInfos.Count <= 0 || SysPara.GlassInfos.Where(p => p.DirName == o.Name).ToList().Count <= 0) { //时间判断 if ((DateTime.Now - o.CreationTime).Minutes < OverTime) { continue; } //初始化数据 GlassInfo glassInfo = new GlassInfo(); //提取ID string tmpID = o.Name; int index = tmpID.IndexOf("TB"); if (index != -1) { tmpID = tmpID.Remove(0, index + 2); } glassInfo.Id = tmpID; //提取EQID,Point坐标 FileInfo textInfo = GlassIDCsvList.Where(p => p.Name.Contains(tmpID)).FirstOrDefault(); if (textInfo != null) { StreamReader sr = new StreamReader(textInfo.FullName); int iLnTmp = 0; //记录文件行数 string sTmp = ""; //读取的数据 while (!sr.EndOfStream && iLnTmp <= Point4Line + 1) //不为最后一行,且小于要读的最后的行数 { iLnTmp++; sTmp = sr.ReadLine(); //读取当前行 //设备ID if (iLnTmp == ReadEQLine) { glassInfo.Equip00_ID = GetLastStr(sTmp, ','); glassInfo.Equip01_ID = glassInfo.Equip00_ID; continue; } //Point1 if (iLnTmp == Point1Line) { glassInfo.Point1.X = GetLastStr(sTmp, ','); continue; } if (iLnTmp == Point1Line + 1) { glassInfo.Point1.Y = GetLastStr(sTmp, ','); continue; } //Point2 if (iLnTmp == Point2Line) { glassInfo.Point2.X = GetLastStr(sTmp, ','); continue; } if (iLnTmp == Point2Line + 1) { glassInfo.Point2.Y = GetLastStr(sTmp, ','); continue; } //Point3 if (iLnTmp == Point3Line) { glassInfo.Point3.X = GetLastStr(sTmp, ','); continue; } if (iLnTmp == Point3Line + 1) { glassInfo.Point3.Y = GetLastStr(sTmp, ','); continue; } //Point4 if (iLnTmp == Point4Line) { glassInfo.Point4.X = GetLastStr(sTmp, ','); continue; } if (iLnTmp == Point4Line + 1) { glassInfo.Point4.Y = GetLastStr(sTmp, ','); continue; } } sr.Close(); } //记录文件目录 glassInfo.DirName = o.Name; //添加数据 SysPara.GlassInfos.Add(glassInfo); //{ // Id = tmpID, // DirName = o.Name, // CreateTime = o.CreationTime.ToString("yyyyMMdd hh:ss"), // Equip00_ID = "", // Equip01_ID = "", // Point1 = new SheetShift(0, 0), // Point2 = new SheetShift(0, 0), // Point3 = new SheetShift(0, 0), // Point4 = new SheetShift(0, 0) //}); } } } }