From f5332b63a97fd25cbd062180ce103cd8b9a6a901 Mon Sep 17 00:00:00 2001 From: CJKmkp <2564608840@qq.com> Date: Mon, 11 Aug 2025 20:23:14 +0800 Subject: [PATCH] =?UTF-8?q?add:=E5=BF=AB=E6=8D=B7=E8=B0=83=E8=89=B2?= =?UTF-8?q?=E7=9B=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../MainWindow_cs/MW_FloatingBarIcons.cs | 46 ++++++++++++++++++- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs b/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs index c7d54771..dbdb4262 100644 --- a/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs +++ b/Ink Canvas/MainWindow_cs/MW_FloatingBarIcons.cs @@ -780,7 +780,20 @@ namespace Ink_Canvas else if (sender is Border border) { lastBorderMouseDownObject = sender; - border.Background = new SolidColorBrush(Color.FromArgb(28, 24, 24, 27)); + // 对于快捷调色板的颜色球,不改变背景颜色,只添加透明度效果 + if (border.Name?.StartsWith("QuickColor") == true) + { + // 保存原始颜色并添加透明度 + var originalColor = border.Background as SolidColorBrush; + if (originalColor != null) + { + border.Background = new SolidColorBrush(Color.FromArgb(180, originalColor.Color.R, originalColor.Color.G, originalColor.Color.B)); + } + } + else + { + border.Background = new SolidColorBrush(Color.FromArgb(28, 24, 24, 27)); + } } } @@ -794,7 +807,36 @@ namespace Ink_Canvas else if (sender is Border border) { lastBorderMouseDownObject = null; - border.Background = new SolidColorBrush(Colors.Transparent); + // 对于快捷调色板的颜色球,恢复原始颜色 + if (border.Name?.StartsWith("QuickColor") == true) + { + // 根据颜色球名称恢复对应的颜色 + switch (border.Name) + { + case "QuickColorWhite": + border.Background = new SolidColorBrush(Colors.White); + break; + case "QuickColorOrange": + border.Background = new SolidColorBrush(Color.FromRgb(255, 165, 0)); + break; + case "QuickColorYellow": + border.Background = new SolidColorBrush(Colors.Yellow); + break; + case "QuickColorBlack": + border.Background = new SolidColorBrush(Colors.Black); + break; + case "QuickColorBlue": + border.Background = new SolidColorBrush(Color.FromRgb(0, 102, 255)); + break; + case "QuickColorRed": + border.Background = new SolidColorBrush(Colors.Red); + break; + } + } + else + { + border.Background = new SolidColorBrush(Colors.Transparent); + } } }