在form1.cs的事件中,点击
全局的结构
Random r = new Random();
List<Point> listPoint = new List<Point>(300);//鼠标点击处生成的点的集合
private void 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();
}
为了不让页面有切换的感觉
结果: