WinFormsPopupAlerts/SystemTooltipAlertRenderer.cs
(开头部分) 6KB这里只显示每个文件的开头 60 行。登录后可以解锁完整代码。
using System;
using System.Collections.Generic;
using System.Text;
using System.Windows.Forms.VisualStyles;
using System.Windows.Forms;
using System.Drawing.Drawing2D;
using System.Drawing;
namespace WinFormsPopupAlerts
{
[System.ComponentModel.ToolboxItem(false)]
public class SystemTooltipAlertRenderer : TooltipAlertRenderer
{
private static bool IsDefined(VisualStyleElement element)
{
return Application.RenderWithVisualStyles && SafeNativeMethods.IsThemePartDefined(element.ClassName, element.Part, element.State);
}
public static VisualStyleElement GetCloseButtonVS(TooltipCloseButtonState buttonState)
{
VisualStyleElement btn;
switch (buttonState)
{
case TooltipCloseButtonState.Hot:
btn = VisualStyleElement.ToolTip.Close.Hot;
break;
case TooltipCloseButtonState.Pressed:
btn = VisualStyleElement.ToolTip.Close.Pressed;
break;
case TooltipCloseButtonState.Normal:
default:
btn = VisualStyleElement.ToolTip.Close.Normal;
break;
}
return btn;
}
public override void DrawCloseButton(Graphics dc, Rectangle rect, TooltipCloseButtonState buttonState)
{
VisualStyleElement btn = GetCloseButtonVS(buttonState);
Rectangle btnRect = GetCloseButtonRect(dc, rect, buttonState);
if (IsDefined(btn))
{
VisualStyleRenderer renderer = new VisualStyleRenderer(btn);
renderer.DrawBackground(dc, btnRect);
}
else
base.DrawCloseButton(dc, rect, buttonState);
}
protected override void Draw(Graphics dc, string title, string text, Rectangle rect, Rectangle titleRect, Rectangle bodyRect, Image img, int iconWidth)
{
if (IsDefined(VisualStyleElement.ToolTip.BalloonTitle.Normal) && IsDefined(VisualStyleElement.ToolTip.Balloon.Normal))
{
VisualStyleRenderer titleRenderer = new VisualStyleRenderer(VisualStyleElement.ToolTip.BalloonTitle.Normal);
VisualStyleRenderer balloonRenderer = new VisualStyleRenderer(VisualStyleElement.ToolTip.Balloon.Normal);
balloonRenderer.DrawBackground(dc, rect);
// drawing title
titleRenderer.DrawText(dc,
new Rectangle(Padding.Left + iconWidth, Padding.Top, rect.Width - iconWidth - (Padding.Left + Padding.Right), titleRect.Height),
后面还有 79 行代码,解锁后查看完整代码
24 小时内免费解锁 3 个项目,之后 1 算力/个。 规则说明
AI 解读 AI
登录后可用,每次 10 算力,解读结果公开显示在下面。
还没有人解读过这个文件。