看这篇内容应该都是刚入门菜菜,下面会描述的容易懂一些。
这次展示一个三角型按钮,其他形状的话改改画的形状就行,圆角也是。
1.添加引用
using System.Windows.Forms; //窗口 继承按钮用到
using System.Drawing; //图形的绘制 绘图用到
using System.Drawing.Drawing2D; //图形的绘制 绘图用到
2.新增一个类文件,用于自定义控件继承Button类。
class bt:Button //添加Button的继承
{
}
3.使用重绘事件修改控件形状。
protected override void OnPaint(PaintEventArgs pevent) //重绘事件
{
base.OnPaint(pevent); //不加这句就会导致图形全黑。
GraphicsPath gp = new GraphicsPath(); //创建图形对象。
gp.AddClosedCurve( //逆时针设置图形,三个点位置。
new Point[]{
new Point(0,0), //第一个点xy位置。
new Point(0,base.Height), //第二个点xy位置,base表示当前窗体。
new Point(base.Width,(base.Height)/2), //第三个点xy位置。
}, 0);
base.Region = new Region(gp); //将图形应用到指定窗口。
}
4.设置按钮的选中样式跟按下样式:
属性面板设置 一、 FlatStyle:Flat 、
二、 FlatAppearance集合下
MouseDownBackColor: 这是按下时控件背景色
MouseOverBackColor:这是鼠标进入控件背景色
成品展示:
最后推荐大家去看看这篇文章:C# GDI+绘图高级编程(包含滚动条后重绘)_金士顿的博客-CSDN博客_c# gdi