窗体设计
新建任意一个窗体,然后修改窗体的Paint事件即可。
事件代码
using System.Drawing;
using System.Windows.Forms;
namespace S11
{
public partial class 绘图窗体 : Form
{
public 绘图窗体()
{
InitializeComponent();
}
private void 绘图窗体_Paint(object sender, PaintEventArgs e)
{
// 首相创建一个Graphics对象,并设置绘图所用的单位为像素
Graphics g = CreateGraphics();
g.PageUnit = GraphicsUnit.Pixel;
// 创建一支红色的笔,用于绘制旗杆和旗身
Pen RedPen = new Pen(Color.Red, 6);
//绘制旗杆
g.DrawLine(RedPen, 40, 15, 40, 1000);
//绘制旗身
g.DrawBezier(RedPen, new PointF(40, 15), new PointF(100, 40), new PointF(250, 15), new PointF(350, 35));
g.DrawBezier(RedPen, new PointF(40, 215), new PointF(100, 240), new PointF(250, 215), new PointF(350, 235));
g.DrawLine(RedPen,new PointF(350, 35), new PointF(350, 235));
RedPen.Dispose();// 使用完红笔后销毁以返还系统资源
// 绘制五环:每次构造一支不同颜色的笔,使用后立即销毁减少系统资源消耗
Pen NewRedPen = new Pen(Color.Red, 4);
g.DrawEllipse(NewRedPen, new Rectangle(new Point(75, 65), new Size(80, 80)));
NewRedPen.Dispose();
Pen BluePen = new Pen(Color.Blue, 4);
g.DrawEllipse(BluePen, new Rectangle(new Point(155, 65), new Size(80, 80)));
BluePen.Dispose();
Pen BlackPen = new Pen(Color.Black, 4);
g.DrawEllipse(BlackPen, new Rectangle(new Point(235, 65), new Size(80, 80)));
BlackPen.Dispose();
Pen YellowPen = new Pen(Color.Yellow, 4);
g.DrawEllipse(YellowPen, new Rectangle(new Point(115, 120), new Size(80, 80)));
YellowPen.Dispose();
Pen GreenPen = new Pen(Color.Green, 4);
g.DrawEllipse(GreenPen, new Rectangle(new Point(195, 120), new Size(80, 80)));
GreenPen.Dispose();
}
}
}