0
点赞
收藏
分享

微信扫一扫

C# GDI练习 随机线段+随机圆

君心浅语 2022-07-14 阅读 70


在form1.cs的事件中,点击

C# GDI练习 随机线段+随机圆_i++


C# GDI练习 随机线段+随机圆_sed_02


全局的结构

Random r = new Random();
List<Point> listPoint = new List<Point>(300);//鼠标点击处生成的点的集合

Form1_Paint(object sender, PaintEventArgs e)
{
Graphics g = e.Graphics;

//随机产生不同颜色的线段
for (int i = 0; i < 100; i++)
{
var x1 = r.Next(Width);
var x2 = r.Next(Width);
var y1 = r.Next(Height);
var y2 = r.Next(Height);
var ColorR = r.Next(256);
var ColorG = r.Next(256);
var ColorB = r.Next(256);
Pen myPen = new Pen(Color.FromArgb(ColorR, ColorG, ColorB), 2);
g.DrawLine(myPen, x1, y1, x2, y2);
}

SolidBrush blueBrush = new SolidBrush(Color.Blue);
Pen redPen = new Pen(Color.LightBlue, 2);
for (int i = 0; i < listPoint.Count; i++)
{
g.FillEllipse(blueBrush, new Rectangle(listPoint[i].X - 20, listPoint[i].Y - 20, 40, 40));
if (i < listPoint.Count - 1)//连线
{
g.DrawLine(redPen, listPoint[i].X, listPoint[i].Y, listPoint[i + 1].X, listPoint[i + 1].Y);
}
}

}
private void Form1_MouseDown(object sender, MouseEventArgs e)
{
Point p = new Point(e.X, e.Y);
listPoint.Add(p);
Invalidate();

}

为了不让页面有切换的感觉

C# GDI练习 随机线段+随机圆_i++_03


结果:

C# GDI练习 随机线段+随机圆_i++_04


举报

相关推荐

0 条评论