publicpartialclass Line : Form ...{ public Line() ...{ InitializeComponent(); } protectedoverridevoid OnPaint(PaintEventArgs e) ...{ //不使用雙倍緩衝 //Graphics g = e.Graphics; //g.FillRectangle(Brushes.White, ClientRectangle); //Random r = new Random(); //for (int x = 0; x < ClientRectangle.Width; x++) //{ // for (int y = 0; y < ClientRectangle.Height; y += 10) // { // Color c = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255)); // using (Pen pen = new Pen(c, 1)) // { // g.DrawLine(pen, new Point(0, 0), new Point(x, y)); // } // } //} //使用雙倍緩衝 Graphics displayGrahics = e.Graphics; Random r =new Random(); Image im =new Bitmap(ClientRectangle.Width, ClientRectangle.Height); Graphics g = Graphics.FromImage(im);//建立一張新的GDI+繪圖介面 g.FillRectangle(Brushes.White, ClientRectangle); for (int x =0; x < ClientRectangle.Width; x++) ...{ for (int y =0; y < ClientRectangle.Height; y +=10) ...{ Color c = Color.FromArgb(r.Next(255), r.Next(255), r.Next(255)); using (Pen pen =new Pen(c, 1)) ...{ g.DrawLine(pen, new Point(0, 0), new Point(x, y));//線條先繪製到新建的那張不可見的介面上 } } } displayGrahics.DrawImage(im, ClientRectangle); im.Dispose(); } }