From 308b3d54f33ae8537283e38215df6e67ac062929 Mon Sep 17 00:00:00 2001 From: Sunny Date: Sun, 9 Jun 2024 15:34:43 +0800 Subject: [PATCH] =?UTF-8?q?*=20UIDatePicker:=20=E4=B8=8B=E6=8B=89=E6=A1=86?= =?UTF-8?q?=E5=8F=AF=E9=80=89=E6=94=BE=E5=A4=A7=E5=80=8D=E6=95=B0=E4=B8=BA?= =?UTF-8?q?2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SunnyUI/Controls/DropItem/UITimeItem.cs | 25 +++++++++++++++++++++++++ SunnyUI/Controls/UITimePicker.cs | 9 ++++++++- 2 files changed, 33 insertions(+), 1 deletion(-) diff --git a/SunnyUI/Controls/DropItem/UITimeItem.cs b/SunnyUI/Controls/DropItem/UITimeItem.cs index 0417c0d0..b8b922b7 100644 --- a/SunnyUI/Controls/DropItem/UITimeItem.cs +++ b/SunnyUI/Controls/DropItem/UITimeItem.cs @@ -21,6 +21,7 @@ using System; using System.Drawing; +using System.Windows.Forms; namespace Sunny.UI { @@ -430,6 +431,10 @@ namespace Sunny.UI InitializeComponent(); this.MouseWheel += UITimeItem_MouseWheel; Translate(); + + if (SizeMultiple < 1) SizeMultiple = 1; + if (SizeMultiple > 2) SizeMultiple = 2; + this.Size = Size.MultiplyAll(SizeMultiple); } public void Translate() @@ -447,8 +452,26 @@ namespace Sunny.UI btnOK.SetDPIScale(); btnCancel.SetDPIScale(); foreach (var label in this.GetControls()) label.SetDPIScale(); + + foreach (Control item in this.Controls) + { + if (!SizeMultipled) + { + item.Left = item.Left * SizeMultiple; + item.Top = item.Top * SizeMultiple; + item.Width = item.Width * SizeMultiple; + item.Height = item.Height * SizeMultiple; + if (item is ISymbol symbol) symbol.SymbolSize *= SizeMultiple; + } + + item.Font = new Font(item.Font.FontFamily, item.Font.Size * SizeMultiple); + } + + SizeMultipled = true; } + internal bool SizeMultipled = false; + private void UITimeItem_MouseWheel(object sender, System.Windows.Forms.MouseEventArgs e) { if (e.Delta < 0) @@ -640,5 +663,7 @@ namespace Sunny.UI Second = 0; ShowOther(); } + + public int SizeMultiple { get; set; } = 1; } } \ No newline at end of file diff --git a/SunnyUI/Controls/UITimePicker.cs b/SunnyUI/Controls/UITimePicker.cs index 4abb2284..37b1c33d 100644 --- a/SunnyUI/Controls/UITimePicker.cs +++ b/SunnyUI/Controls/UITimePicker.cs @@ -19,10 +19,12 @@ * 2020-05-29: V2.2.5 增加文件 * 2020-08-07: V2.2.7 可编辑输入 * 2020-09-16: V2.2.7 更改滚轮选择时间的方向 + * 2024-06-09: V3.6.6 下拉框可选放大倍数为2 ******************************************************************************/ using System; using System.ComponentModel; +using System.Drawing; using System.Windows.Forms; namespace Sunny.UI @@ -143,6 +145,10 @@ namespace Sunny.UI private readonly UITimeItem item = new UITimeItem(); + [DefaultValue(1)] + [Description("弹窗放大倍数,可以1或者2"), Category("SunnyUI")] + public int SizeMultiple { get => item.SizeMultiple; set => item.SizeMultiple = value; } + /// /// 创建对象 /// @@ -188,7 +194,8 @@ namespace Sunny.UI item.Translate(); item.SetDPIScale(); item.SetStyleColor(UIStyles.ActiveStyleColor); - ItemForm.Show(this); + Size size = SizeMultiple == 1 ? new Size(168, 200) : new Size(336, 400); + ItemForm.Show(this, size); } } } \ No newline at end of file