吉吉于

C#每天抄一点(27):满天星

效果: 随机生成白色斑点,看起来像星星…直到看的你眼花…

原版代码比这个复杂,不过我看那样好像没必要,删了不少,现在这样可以实现同样的功能。

01 /*
02 * 由SharpDevelop创建。
03 * 用户: Lazynight
04 * 日期: 2011/10/26
05 * 时间: 13:49
06 *
07 * 要改变这种模板请点击 工具|选项|代码编写|编辑标准头文件
08 */
09 using System;
10 using System.Collections.Generic;
11 using System.Drawing;
12 using System.Windows.Forms;
13
14 namespace Lazy27_满天星
15 {
16
17     public partial class MainForm : Form
18     {
19         public MainForm()
20         {
21             InitializeComponent();
22         }
23
24         void MainFormLoad(object sender, EventArgs e)
25         {
26             Graphics Lazy_star=this.CreateGraphics();
27             //定义Graphics对象实例
28             int[,] Star=new int[1000000,4];
29             int Amout=900000;//点的数量
30             Random rand=new Random();
31             for(int j=1;j<=Amout;j++)
32             {
33                 Star[j,1]=rand.Next(this.Width);
34                 //描点区域宽度,用来做横坐标
35                 Star[j,2]=rand.Next(this.Height);
36                 //描点区域高度,用来做纵坐标
37                 Star[j,3]=rand.Next(5);
38                 //点的大小
39             }
40             for(int i=1;i<=Amout;i++)
41             {
42                 int x=Star[i,1];
43                 //为横坐标赋值
44                 int y=Star[i,2];
45                 //为纵坐标赋值
46                 Lazy_star.FillEllipse(Brushes.White,x,y,Star[i,3],Star[i,3]);
47                 //描点
48             }
49         }
50     }
51 }

下载源码

转载请注明:于哲的博客 » C#每天抄一点(27):满天星