首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

c# winforms窗体边框中带边框颜色的圆角边框

C# WinForms窗体边框中带边框颜色的圆角边框是一种自定义窗体外观的技术,通过改变窗体的边框样式和颜色,使其具有圆角边框的效果。这种技术可以提升应用程序的用户界面体验,使其更加美观和个性化。

在C# WinForms中实现带边框颜色的圆角边框,可以通过以下步骤:

  1. 设置窗体的边框样式为None,即隐藏默认的窗体边框。
  2. 重写窗体的OnPaint方法,在该方法中绘制自定义的边框。
  3. 使用Graphics对象绘制圆角矩形,并设置边框的颜色和宽度。
  4. 在窗体的Load事件中调用窗体的Invalidate方法,触发重绘操作。

以下是一个示例代码,演示如何实现带边框颜色的圆角边框:

代码语言:txt
复制
using System;
using System.Drawing;
using System.Windows.Forms;

public class CustomForm : Form
{
    private Color borderColor = Color.Red; // 设置边框颜色
    private int borderWidth = 2; // 设置边框宽度
    private int borderRadius = 10; // 设置圆角半径

    public CustomForm()
    {
        this.FormBorderStyle = FormBorderStyle.None; // 设置边框样式为None
        this.Load += CustomForm_Load;
    }

    protected override void OnPaint(PaintEventArgs e)
    {
        base.OnPaint(e);

        Graphics g = e.Graphics;
        Pen borderPen = new Pen(borderColor, borderWidth);

        // 绘制圆角矩形边框
        g.DrawRoundedRectangle(borderPen, new Rectangle(borderWidth / 2, borderWidth / 2, this.Width - borderWidth, this.Height - borderWidth), borderRadius);
    }

    private void CustomForm_Load(object sender, EventArgs e)
    {
        this.Invalidate(); // 触发重绘操作
    }
}

public static class GraphicsExtensions
{
    public static void DrawRoundedRectangle(this Graphics graphics, Pen pen, Rectangle bounds, int cornerRadius)
    {
        int diameter = cornerRadius * 2;
        Size size = new Size(diameter, diameter);
        Rectangle arcBounds = new Rectangle(bounds.Location, size);
        graphics.DrawArc(pen, arcBounds, 180, 90);
        arcBounds.X = bounds.Right - diameter;
        graphics.DrawArc(pen, arcBounds, 270, 90);
        arcBounds.Y = bounds.Bottom - diameter;
        graphics.DrawArc(pen, arcBounds, 0, 90);
        arcBounds.X = bounds.Left;
        graphics.DrawArc(pen, arcBounds, 90, 90);
        graphics.DrawLine(pen, bounds.Left + cornerRadius, bounds.Top, bounds.Right - cornerRadius, bounds.Top);
        graphics.DrawLine(pen, bounds.Left + cornerRadius, bounds.Bottom, bounds.Right - cornerRadius, bounds.Bottom);
        graphics.DrawLine(pen, bounds.Left, bounds.Top + cornerRadius, bounds.Left, bounds.Bottom - cornerRadius);
        graphics.DrawLine(pen, bounds.Right, bounds.Top + cornerRadius, bounds.Right, bounds.Bottom - cornerRadius);
    }
}

这段代码定义了一个名为CustomForm的自定义窗体类,通过重写OnPaint方法和使用Graphics对象绘制圆角矩形边框,实现了带边框颜色的圆角边框效果。可以根据需要修改borderColor、borderWidth和borderRadius等参数来自定义边框的颜色、宽度和圆角半径。

推荐的腾讯云相关产品和产品介绍链接地址:

请注意,以上推荐的腾讯云产品仅供参考,具体选择应根据实际需求进行评估和决策。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

  • 圆角虚线边框?CSS 不在话下

    今天,我们来看这么一个非常常见切图场景,我们需要一个圆角虚线边框,像是这样: 这个我们使用 CSS 还是可以轻松解决,代码也很简单,核心代码: div { border-radius:...那么,在 CSS ,我们还有其它方式能够实现圆角,且虚线单段长度与线段之间间隙可控方式吗? 本文,我们就一起探讨探讨。...并且,不管是哪个方法,都存在一定瑕疵。譬如如果希望边框中间不是背景色,而是镂空,上述两种 CSS 方式都将不再使用。 因此,对于圆角虚线边框场景,最佳方式一定是 SVG。...通过一个动图,简单感受一下: 总结一下 本文介绍了 2 种在 CSS ,不借助切图和 SVG 实现圆角虚线边框方式: 重复角向渐变叠加遮罩层 重复线性渐变叠加遮罩层 当然,两种 CSS 方式都存在一定瑕疵...最后,介绍了借助 SVG 工具 Customize your CSS Border 快速生成圆角虚线边框方式。

    37710

    css圆角边框怎么设置颜色_word图片怎么设置圆角大小

    css+div是页面设计法宝,通过css+div能够设计出各种效果!本文给大家简单介绍下css圆角边框怎么设置,大家可以参考,也可以直接拿过去使用,当然要修改下具体参数。...规则如下: 圆角边框(border-radius)基本用法:border-radius 属性是一个简写属性,用于设置四个圆角属性。 圆角边框最基本用法就是设置四个相同弧度圆角。...): 以下是css圆角边框具体代码实例: #rcorners1 { border-radius: 15px 50px 30px 5px; background: #73AD21;...现在大家应该知道css圆角边框怎么设置了吧!总结起来很简单,设置css圆角边框就是设置border-radius值,设置数字不同,圆角大小也不同。...通过设计css圆角边框,我们就不需要再用背景图片,这不仅让页面设计更加简单,同时也有利于提升页面加载速度。

    4.6K20

    从零开始学 Web 之 CSS3(二)颜色模式,文字阴影,盒模型,边框圆角边框阴影

    注意: 1、RGBA和HSLA透明度不会影响子元素透明度,不具继承性; 2、opacity 会影响子元素透明度,子元素会继承父元素透明度。...例如: padding + border + width = 盒子宽度 padding + border + height = 盒子高度 很明显,这不直观,很容易出错,造成网页其它元素错位。...2、CSS3可以通过box-sizing 来指定盒模型,即可指定为content-box、border-box,这样我们计算盒子大小方式就发生了改变。...3、浏览器兼容性 IE8 及以上版本支持该属性,Firefox 需要加上浏览器厂商前缀 -moz-,对于低版本 IOS 和 Android 浏览器也需要加上 -webkit- 四、边框圆角 使用.../*添加边框圆角*/ /*1.设置一个值:四个角圆角值都一样*/ border-radius: 10px; border-radius: 50%; /*2.设置两个值:第一个值控制左上/右下,第二个值控制右上

    1.5K30

    网站建设怎么设置层边框 边框设计作用是什么

    由此可见,想要搭建一个符合用户体验网站,就要好好搭建网站框架。下面为大家介绍网站建设怎么设置层边框。 网站建设怎么设置层边框 网站建设怎么设置层边框?...想要设置层边框,首先就是要确定边框宽跟高,这两个css样式分别是width跟height。...除此之外,大家还可以将边框进行间距设置,padding就是设置边框之间距离距离。关于层边框设置还有很多种方式,建议大家先了解各个边框点,之后再进行设置,也可以找技术人员进行指导学习。...由此可见,企业搭建网站是多么重要。 以上是网站建设怎么设置层边框相关知识点分享。...如果大家想对网站搭建有更多熟悉操作,那就要多学多看多问,看教程同时还要多操作,在操作过程遇到不懂就要多问,多增强记忆。

    1K20

    边框检测在 Python 应用

    在游戏开发,我们经常会回使用到边框检测。我们知道,边框检测是计算机视觉中常用技术,用于检测图像边界和轮廓。在Python,可以使用OpenCV库来实现边框检测。具体是怎么实现?...以下是一个简单示例代码,演示如何在Python中使用OpenCV进行边框检测:1、问题背景:用户试图编写一个程序,该程序要求用户输入一个数字,然后在屏幕上绘制相应数量矩形。然而,这些矩形不能重叠。...用户借鉴了 Al Sweigart 书中边框检测方法,但遇到了问题,希望寻求帮助。...如果矩形重叠,则重新生成矩形,直到找到一个不重叠矩形。最后,所有生成矩形都会被绘制到游戏窗口中。边框检测在图像处理、目标检测和计算机视觉领域有着广泛应用,能够帮助识别物体形状、边界和结构。...通过使用OpenCV库,可以方便地实现边框检测功能。所以说边框检测在实际应用是很重要,如有任何疑问可以评论区留言讨论。

    19510

    C#】分享一个可灵活设置边框Panel

    BorderSide控制,同时把BorderSide默认值设为None,即默认不显示边框。...this.Invalidate(); } } [DefaultValue(typeof(Color), "Black"), Description("边框颜色...时,自带边框似乎不属于Panel一部分,不能控制或清除,我猜应该是底层API负责绘制,所以唯有在None时才能自由发挥; * 无论单色或是三维模式,均可通过BorderSide自由启用/禁用各个方位边框...; * 在单色模式下,可通过BorderColor设置边框颜色,此时设置三维样式(Border3DStyle)无效; * 在三维模式下,可通过Border3DStyle设置三维样式,此时设置边框颜色(BorderColor...this.Invalidate(); } } [DefaultValue(typeof(Color), "Black"), Description("边框颜色

    98310

    dotnet OpenXML 读取 PPT 形状边框定义在 Style 颜色画刷

    本文来和大家聊聊在 PPT 形状使用了 Style 样式颜色画刷读取方法 在开始之前,期望大家已了解如何在 dotnet 应用里面读取 PPT 文件,如果还不了解读取方法,请参阅 C# dotnet...包括定义了边框粗细和颜色画刷等 但是从上面文档内容可以看到,只是定义了边框粗细,没有定义颜色。这就需要从 样式里面读取线条样式。...接着读取 内容,用来覆盖作为实际颜色 下面我将给大家演示如何在 WPF 读取 PPT 形状 Style 边框颜色和在界面里面将此显示出来...; 以上代码拿到 outlineWidth 就是形状边框粗细。此形状有轮廓,但是定义是 只有宽度,没有颜色颜色需要在 Style 里面读取。.../lindexi/lindexi_gd.git 获取代码之后,进入 Pptx 文件夹 虽然可以看到在 WPF 上形状边框颜色和在 PPT 上形状颜色是相同,然而以上逻辑却有漏洞在于以上是重新被定义了颜色

    1K20

    在 Windows 11 处理 WindowChrome 圆角

    Windows 11 使用 3 个级别的圆角,具体取决于要应用圆角 UI 组件及该组件相对于相邻元素排列方式。 圆角半径 使用情况 8px 窗体、Flyout 、弹出菜单等 。...另外,当窗体最大化或使用对齐布局时不应用圆角。 4px 页面内元素,如按钮或列表等。 0px 与其它直边相交直边不使用圆角。...也就是说在 Windows 11 上窗体需要应用半径为 8px 圆角。 2....WPF 制作高性能透明背景异形窗口(使用 WindowChrome 而不要使用 AllowsTransparency=True) 另外,关于圆角我要抱怨一下: 在 Windows 11 ,我们对窗口边框进行了圆角处理...参考 在 Windows 11 桌面应用应用圆角 在 Windows 11 上,为增强应用功能而可以执行最常见 11 种操作 Windows 11 几何图形 6.

    3K10

    .Net.Net Core 界面框架 NanUI 发布新版本啦!

    NanUI 简介 NanUI 界面组件是一个开放源代码 .NET / .NET Core 窗体应用程序(WinForms)界面组件。...承载窗体 重写承载窗体底层删除了没必要 API 仅保留和框架有关功能,并且拓展了无边框窗体能力,新增了两种阴影效果以及一种边框效果。...无边框窗体 在无边框窗体样式系统原生标题栏和边框被隐藏,可以使用整个窗体区域来绘制您应用程序界面。...与 Layered 样式相同,根据网页透明或者半透明区域设置,将实现特定效果磨砂玻璃效果。 ? 窗体特效 阴影效果 关闭 ? 泛光 ? 阴影 ? 投影 ? 边框效果 无边框 ? 普通边框 ?...圆角边框 ? 以上示例均已提交至 GitHub 代码仓库,请异步https://github.com/XuanchenLin/NanUI-0.8-Examples获取各个示例源码。

    2.6K40

    Java打印边框乘法口诀表_Java 面试 – 打印九九乘法口诀表

    大家好,又见面了,我是你们朋友全栈君。 在Java面试过程, 面试者经常会被要求手写代码或上机操作。一般来说,手写代码或上机操作,主要还是考察面试者分析问题和解决问题能力。...打印九九乘法口诀无疑是非常基础,那么如何实现呢?首先我们先来分析一下九九乘法口诀表内在规律,然后再根据分析结果,选择适合解决方案。...xrange(1,x+1): print string.ljust(“%d*%d = ” … 随机推荐 CentOs下安装maven 现有的一个项目使用了Maven来管理,源代码放到了Subversion....dependencies{ compile ‘com.youth.banner:banner:1.4.10’ //最新版本 } 或者引用本地li … Java Web开发Session超时设置 在Java Web开发,...vim是Unix/Linux系统最常用编辑器之一,在保存文件时,我通常选择”:wq”,因为最开始学习vim时候,就只记住了几个常用命令:也没有细究命令含义.

    91210
    领券