* UITitlePanel: 标题栏文字位置属性由TextAlign改为TextAlignment
This commit is contained in:
parent
756877cc0b
commit
05b674e3ba
@ -118,6 +118,14 @@ namespace Sunny.UI
|
||||
TextRenderer.DrawText(g, text, font, new Point(left, top), color);
|
||||
}
|
||||
|
||||
public static void DrawString(this Graphics g, string text, Font font, Color color, Rectangle rect, HorizontalAlignment horizontalAlignment, int offsetX = 0, int offsetY = 0)
|
||||
{
|
||||
StringAlignment alignment = StringAlignment.Center;
|
||||
if (horizontalAlignment == HorizontalAlignment.Left) alignment = StringAlignment.Near;
|
||||
if (horizontalAlignment == HorizontalAlignment.Right) alignment = StringAlignment.Far;
|
||||
g.DrawString(text, font, color, rect, alignment, StringAlignment.Center, offsetX, offsetY);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// 绘制字符串
|
||||
/// </summary>
|
||||
|
@ -23,6 +23,7 @@
|
||||
* 2022-05-30: V3.1.9 修复Padding设置
|
||||
* 2022-10-28: V3.2.6 箭头图标可设置颜色
|
||||
* 2023-05-02: V3.3.6 增加了一个关闭按钮的属性,点击后隐藏控件
|
||||
* 2023-05-12: V3.3.6 标题栏文字位置属性由TextAlign改为TextAlignment
|
||||
******************************************************************************/
|
||||
|
||||
using System;
|
||||
@ -103,7 +104,7 @@ namespace Sunny.UI
|
||||
/// 文字对齐方向
|
||||
/// </summary>
|
||||
[DefaultValue(HorizontalAlignment.Center)]
|
||||
[Description("文字对齐方向"), Category("SunnyUI")]
|
||||
[Description("文字对齐方向"), Category("SunnyUI"), Browsable(false)]
|
||||
public HorizontalAlignment TextAlign
|
||||
{
|
||||
get => textAlign;
|
||||
@ -165,20 +166,22 @@ namespace Sunny.UI
|
||||
|
||||
color = Enabled ? TitleForeColor : UIFontColor.Regular;
|
||||
SizeF sf = g.MeasureString(Text, Font);
|
||||
switch (TextAlign)
|
||||
{
|
||||
case HorizontalAlignment.Left:
|
||||
g.DrawString(Text, Font, color, _titleInterval, (TitleHeight - sf.Height) / 2.0f);
|
||||
break;
|
||||
g.DrawString(Text, Font, color, new Rectangle(_titleInterval, 0, Width - _titleInterval * 2 - (ShowCollapse || ShowClose ? 24 : 0), TitleHeight), TextAlignment);
|
||||
|
||||
case HorizontalAlignment.Center:
|
||||
g.DrawString(Text, Font, color, (Width - sf.Width) / 2.0f, (TitleHeight - sf.Height) / 2.0f);
|
||||
break;
|
||||
|
||||
case HorizontalAlignment.Right:
|
||||
g.DrawString(Text, Font, color, Width - _titleInterval - sf.Width, (TitleHeight - sf.Height) / 2.0f);
|
||||
break;
|
||||
}
|
||||
//switch (TextAlign)
|
||||
//{
|
||||
// case HorizontalAlignment.Left:
|
||||
// g.DrawString(Text, Font, color, _titleInterval, (TitleHeight - sf.Height) / 2.0f);
|
||||
// break;
|
||||
//
|
||||
// case HorizontalAlignment.Center:
|
||||
// g.DrawString(Text, Font, color, (Width - sf.Width) / 2.0f, (TitleHeight - sf.Height) / 2.0f);
|
||||
// break;
|
||||
//
|
||||
// case HorizontalAlignment.Right:
|
||||
// g.DrawString(Text, Font, color, Width - _titleInterval - sf.Width, (TitleHeight - sf.Height) / 2.0f);
|
||||
// break;
|
||||
//}
|
||||
|
||||
if (ShowCollapse)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user