cctv5体育节目表(c罗)

cctv5体育节目表,原文标题:C# Winform 自定义Picture。做一个圆形的图片。public class BzC

cctv5体育节目表,原文标题:C# Winform 自定义Picture。

做一个圆形的图片。

cctv5体育节目表(c罗)

public class BzCircularPictureBox : PictureBox { private int borderSize = 2; private Color borderColor = Color.RoyalBlue; private Color borderColor2 = Color.HotPink; private DashStyle borderLineStyle = DashStyle.Solid; private DashCap borderCapStyle = DashCap.Flat; private float gradientAngle = 50F; public BzCircularPictureBox() { this.Size = new Size(100, 100); this.SizeMode = PictureBoxSizeMode.StretchImage; } /// <summary> /// 边框大小 /// </summary> public int BorderSize { get { return borderSize; } set { borderSize = value; this.Invalidate(); } } /// <summary> /// 边框颜色 /// </summary> public Color BorderColor { get { return borderColor; } set { borderColor = value; this.Invalidate(); } } /// <summary> /// 边框颜色 /// </summary> public Color BorderColor2 { get { return borderColor2; } set { borderColor2 = value; this.Invalidate(); } } /// <summary> /// 边框样式 /// </summary> public DashStyle BorderLineStyle { get { return borderLineStyle; } set { borderLineStyle = value; this.Invalidate(); } } public DashCap BorderCapStyle { get { return borderCapStyle; } set { borderCapStyle = value; this.Invalidate(); } } /// <summary> /// 渐进的角度 /// </summary> public float GradientAngle { get { return gradientAngle; } set { gradientAngle = value; this.Invalidate(); } } protected override void OnResize(EventArgs e) { base.OnResize(e); this.Size = new Size(this.Width, this.Height); } protected override void OnPaint(PaintEventArgs pe) { base.OnPaint(pe); var graph = pe.Graphics; var rectContourSmooth = Rectangle.Inflate(this.ClientRectangle, -1, -1); var rectBoard = Rectangle.Inflate(rectContourSmooth, -borderSize, -borderSize); var smoothSize = borderSize > 0 ? borderSize * 3 : 1; using (var borderGColor = new LinearGradientBrush(rectBoard, BorderColor, borderColor2, gradientAngle)) using (var pathRegion = new GraphicsPath()) using (var penSmooth = new Pen(this.Parent.BackColor, smoothSize)) using (var penBorder = new Pen(borderGColor, borderSize)) { penBorder.DashStyle = borderLineStyle; penBorder.DashCap = borderCapStyle; pathRegion.AddEllipse(rectContourSmooth); graph.SmoothingMode = SmoothingMode.AntiAlias; graph.DrawEllipse(penSmooth, rectContourSmooth); if (borderSize > 0) { graph.DrawEllipse(penBorder, rectBoard); } } } 本文《cctv5体育节目表(c罗)》由网赚联盟( wangzhuan.org.cn )整理或原创,感谢您的阅读。

随机文章

站长导航
友情链接交换
关键词排名优化
GEO培训
SEO小小课堂网
SEO教程
站长导航
友情链接交换

百度搜索“网赚联盟”即可找到本站,微信搜索“小小课堂网”关注小小课堂网公众号。网赚联盟( wangzhuan.org.cn )欢迎用户投稿,发布者:数字化健行者,文章版权归作者所有,投稿文章不代表网赚联盟立场,中二少年发布为网赚联盟原创文章,转载请注明出处:https://wangzhuan.org.cn/1070529.html

发表评论

您的电子邮箱地址不会被公开。 必填项已用*标注