From 61ea69f2ffb86df2aa5b1df5d5346d33cd5213c2 Mon Sep 17 00:00:00 2001 From: Sunny Date: Sat, 13 Jan 2024 11:35:46 +0800 Subject: [PATCH] =?UTF-8?q?*=20UITextBox:=20=E8=B0=83=E6=95=B4Radius?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E8=87=AA=E5=8A=A8=E8=B0=83=E6=95=B4=E6=96=87?= =?UTF-8?q?=E6=9C=AC=E6=A1=86=E7=9A=84=E4=BD=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- SunnyUI/Controls/UITextBox.cs | 23 ++++++++++++++++------- 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/SunnyUI/Controls/UITextBox.cs b/SunnyUI/Controls/UITextBox.cs index 9d399ce9..7b36f571 100644 --- a/SunnyUI/Controls/UITextBox.cs +++ b/SunnyUI/Controls/UITextBox.cs @@ -58,6 +58,7 @@ * 2023-12-18: V3.6.2 修复高度不随字体改变 * 2023-12-18: V3.6.2 修改显示按钮时Tips小红点的位置 * 2023-12-25: V3.6.2 增加Text的属性编辑器 + * 2024-01-13: V3.6.3 调整Radius时,自动调整文本框的位置 ******************************************************************************/ using System; @@ -705,7 +706,11 @@ namespace Sunny.UI } } - //private bool NoNeedChange = false; + protected override void OnRadiusChanged(int value) + { + base.OnRadiusChanged(value); + SizeChange(); + } private void SizeChange() { @@ -728,40 +733,44 @@ namespace Sunny.UI edit.Top = (Height - edit.Height) / 2 + 1; } + int added = Radius <= 5 ? 0 : (Radius - 5) / 2; + if (icon == null && Symbol == 0) { edit.Left = 4; edit.Width = Width - 8; + edit.Left = edit.Left + added; + edit.Width = edit.Width - added * 2; } else { if (icon != null) { edit.Left = 4 + iconSize; - edit.Width = Width - 8 - iconSize; + edit.Width = Width - 8 - iconSize - added; } else if (Symbol > 0) { edit.Left = 4 + SymbolSize; - edit.Width = Width - 8 - SymbolSize; + edit.Width = Width - 8 - SymbolSize - added; } } - btn.Left = Width - 2 - ButtonWidth; + btn.Left = Width - 2 - ButtonWidth - added; btn.Top = 2; btn.Height = Height - 4; if (ShowButton) { - edit.Width = edit.Width - btn.Width - 3; + edit.Width = edit.Width - btn.Width - 3 - added; } if (tipsBtn != null) { if (ShowButton) - tipsBtn.Location = new System.Drawing.Point(Width - btn.Width - 10, 2); + tipsBtn.Location = new System.Drawing.Point(Width - btn.Width - 10 - added, 2); else - tipsBtn.Location = new System.Drawing.Point(Width - 8, 2); + tipsBtn.Location = new System.Drawing.Point(Width - 8 - added, 2); } } else