实现btnSaveTempRegion按钮功能:弹出保存文件对话框并将测温区信息保存为CSV文件
This commit is contained in:
@@ -166,6 +166,7 @@ namespace JoyD.Windows.CS
|
|||||||
this.btnSaveTempRegion.Size = new System.Drawing.Size(23, 4);
|
this.btnSaveTempRegion.Size = new System.Drawing.Size(23, 4);
|
||||||
this.btnSaveTempRegion.Text = "保存测温区";
|
this.btnSaveTempRegion.Text = "保存测温区";
|
||||||
this.btnSaveTempRegion.ToolTipText = "保存测温区";
|
this.btnSaveTempRegion.ToolTipText = "保存测温区";
|
||||||
|
this.btnSaveTempRegion.Click += new System.EventHandler(this.BtnSaveTempRegion_Click);
|
||||||
//
|
//
|
||||||
// btnNewTempDiff
|
// btnNewTempDiff
|
||||||
//
|
//
|
||||||
|
|||||||
@@ -2999,6 +2999,58 @@ namespace JoyD.Windows.CS
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 保存测温区按钮点击事件
|
||||||
|
/// </summary>
|
||||||
|
private void BtnSaveTempRegion_Click(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
// 如果没有测温区,则提示用户
|
||||||
|
if (_drawnRectangles.Count == 0)
|
||||||
|
{
|
||||||
|
MessageBox.Show("没有可保存的测温区", "提示", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 弹出保存文件对话框
|
||||||
|
SaveFileDialog saveFileDialog = new SaveFileDialog();
|
||||||
|
saveFileDialog.Filter = "CSV文件 (*.csv)|*.csv|所有文件 (*.*)|*.*";
|
||||||
|
saveFileDialog.Title = "保存测温区信息";
|
||||||
|
saveFileDialog.DefaultExt = "csv";
|
||||||
|
saveFileDialog.FileName = "测温区信息.csv";
|
||||||
|
|
||||||
|
// 显示保存文件对话框,如果用户点击了确定按钮
|
||||||
|
if (saveFileDialog.ShowDialog() == DialogResult.OK)
|
||||||
|
{
|
||||||
|
// 使用StreamWriter保存为CSV文件
|
||||||
|
using (StreamWriter writer = new StreamWriter(saveFileDialog.FileName, false, Encoding.UTF8))
|
||||||
|
{
|
||||||
|
// 写入CSV文件头部
|
||||||
|
writer.WriteLine("Index,X,Y,Width,Height,Color");
|
||||||
|
|
||||||
|
// 遍历所有测温区,将信息写入CSV文件
|
||||||
|
foreach (RegionInfo region in _drawnRectangles)
|
||||||
|
{
|
||||||
|
// 获取颜色的十六进制表示
|
||||||
|
string colorHex = ColorTranslator.ToHtml(region.Color);
|
||||||
|
|
||||||
|
// 写入一行数据,格式:索引,X坐标,Y坐标,宽度,高度,颜色
|
||||||
|
writer.WriteLine($"{region.Index},{region.ImageRectangle.X},{region.ImageRectangle.Y},{region.ImageRectangle.Width},{region.ImageRectangle.Height},{colorHex}");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 保存成功后提示用户
|
||||||
|
MessageBox.Show("测温区信息保存成功", "成功", MessageBoxButtons.OK, MessageBoxIcon.Information);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
Console.WriteLine("保存测温区信息失败: " + ex.Message);
|
||||||
|
MessageBox.Show("保存测温区信息失败: " + ex.Message, "错误", MessageBoxButtons.OK, MessageBoxIcon.Error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
/// 新建测温区按钮点击事件
|
/// 新建测温区按钮点击事件
|
||||||
/// </summary>
|
/// </summary>
|
||||||
|
|||||||
Reference in New Issue
Block a user