diff --git a/Windows/CS/Framework4.0/Toprie/Toprie/Setting.cs b/Windows/CS/Framework4.0/Toprie/Toprie/Setting.cs index ee1e2c9..17a56ac 100644 --- a/Windows/CS/Framework4.0/Toprie/Toprie/Setting.cs +++ b/Windows/CS/Framework4.0/Toprie/Toprie/Setting.cs @@ -258,6 +258,8 @@ namespace JoyD.Windows.CS dataGridViewTempDiff.EditingControlShowing += new DataGridViewEditingControlShowingEventHandler(DataGridViewTempDiff_EditingControlShowing); // 添加单元格双击事件用于触发编辑模式 dataGridViewTempDiff.CellDoubleClick += new DataGridViewCellEventHandler(DataGridViewTempDiff_CellDoubleClick); + // 添加选择变更事件用于控制画笔大小按钮的显示 + dataGridViewTempDiff.SelectionChanged += new EventHandler(DataGridViewTempDiff_SelectionChanged); // 添加一些示例数据 AddSampleTempDiffData(); @@ -438,6 +440,42 @@ namespace JoyD.Windows.CS // 移除颜色列点击处理逻辑,颜色列修改改为双击触发 // 温差值列点击不再直接进入编辑模式,改为双击进入 } + + /// + /// 温差图例选择变更事件处理 + /// + private void DataGridViewTempDiff_SelectionChanged(object sender, EventArgs e) + { + try + { + // 只有在温差图绘制状态下,且有选中行时,显示画笔大小按钮 + if (_isTempDiffDrawingMode && dataGridViewTempDiff.SelectedRows.Count > 0) + { + // 显示所有画笔大小按钮 + btnBrushSize1.Visible = true; + btnBrushSize3.Visible = true; + btnBrushSize5.Visible = true; + btnBrushSize10.Visible = true; + btnBrushSize15.Visible = true; + + // 确保当前选中的画笔大小按钮处于选中状态 + UpdateBrushSizeButtonSelection(_currentBrushSize); + } + else + { + // 隐藏所有画笔大小按钮 + btnBrushSize1.Visible = false; + btnBrushSize3.Visible = false; + btnBrushSize5.Visible = false; + btnBrushSize10.Visible = false; + btnBrushSize15.Visible = false; + } + } + catch (Exception ex) + { + Console.WriteLine("更新画笔大小按钮可见性失败: " + ex.Message); + } + } private void DataGridViewTempDiff_CellDoubleClick(object sender, DataGridViewCellEventArgs e) { @@ -551,6 +589,14 @@ namespace JoyD.Windows.CS btnSelectColor.Visible = false; // 隐藏颜色选择按钮 btnDeleteRegion.Visible = false; // 隐藏删除区域按钮 dataGridViewTempDiff.Visible = false; // 隐藏温差图例表格 + btnAddTempDiff.Visible = false; // 隐藏添加温差图例按钮 + btnDeleteTempDiff.Visible = false; // 隐藏删除温差图例按钮 + // 隐藏所有画笔大小按钮 + btnBrushSize1.Visible = false; + btnBrushSize3.Visible = false; + btnBrushSize5.Visible = false; + btnBrushSize10.Visible = false; + btnBrushSize15.Visible = false; break; case 1: // 选中区域状态 btnDrawRegion.Visible = false; // 隐藏绘制区域按钮 @@ -558,6 +604,14 @@ namespace JoyD.Windows.CS btnSelectColor.Visible = true; // 显示颜色选择按钮 btnDeleteRegion.Visible = true; // 显示删除区域按钮 dataGridViewTempDiff.Visible = false; // 隐藏温差图例表格 + btnAddTempDiff.Visible = false; // 隐藏添加温差图例按钮 + btnDeleteTempDiff.Visible = false; // 隐藏删除温差图例按钮 + // 隐藏所有画笔大小按钮 + btnBrushSize1.Visible = false; + btnBrushSize3.Visible = false; + btnBrushSize5.Visible = false; + btnBrushSize10.Visible = false; + btnBrushSize15.Visible = false; break; case 2: // 绘制状态 btnSelectColor.Visible = true; // 显示颜色选择按钮 @@ -565,6 +619,14 @@ namespace JoyD.Windows.CS btnDeleteRegion.Visible = false; // 隐藏删除区域按钮 btnDrawTempDiff.Visible = false; // 隐藏温差图按钮 dataGridViewTempDiff.Visible = false; // 隐藏温差图例表格 + btnAddTempDiff.Visible = false; // 隐藏添加温差图例按钮 + btnDeleteTempDiff.Visible = false; // 隐藏删除温差图例按钮 + // 隐藏所有画笔大小按钮 + btnBrushSize1.Visible = false; + btnBrushSize3.Visible = false; + btnBrushSize5.Visible = false; + btnBrushSize10.Visible = false; + btnBrushSize15.Visible = false; break; case 3: // 温差图绘制状态 btnDrawTempDiff.Visible = true; // 显示温差图按钮 @@ -574,6 +636,12 @@ namespace JoyD.Windows.CS dataGridViewTempDiff.Visible = true; // 显示温差图例表格 btnAddTempDiff.Visible = true; // 显示添加温差图例按钮 btnDeleteTempDiff.Visible = true; // 显示删除温差图例按钮 + // 初始隐藏画笔大小按钮,等待用户选择温差图例后在SelectionChanged事件中显示 + btnBrushSize1.Visible = false; + btnBrushSize3.Visible = false; + btnBrushSize5.Visible = false; + btnBrushSize10.Visible = false; + btnBrushSize15.Visible = false; break; } }