Grapgics對象類似畫布或者一張紙,供其他對象在上面作圖。具體用Grapgics類繪製一條直線的方法如下:
Graphics g;
Pen newPen = new Pen(Color.Yellow);//定義一個畫筆,黃色
Point startP = new Point(20,20);//線的起始點座標
Point endP = new Point(100,100);//線的終止點座標
Line line ;
line = new Line(startP, endP);
g = this.pictureBox1.CreateGraphics();
g.DrawLine(newPen, line.startPoint, line.endPoint);//繪製直線
這樣直線就畫出來了,為了能拖動線的終止點,首先當滑鼠線上的終止點上時,變換線的顏色(下面的方法都在MouseMove事件中):
//擷取當前滑鼠位置
Point p = new Point();
p.X = e.X;
p.Y = e.Y;
Rectangle rect = new Rectangle(line.endPoint.X - 3, line.endPoint.Y - 3, 6, 6);//定義一個地區,當滑鼠在這個地區內時,改變線的顏色
if (p.X >= rect.X && p.X <= rect.Right && p.Y >= rect.Top && p.Y <= rect.Bottom)
{
//當滑鼠靠近線的尾端的時候,變成藍色
newPen.Color = Color.Blue;
g.DrawLine(newPen, line.startPoint, line.endPoint);
}
拖動直線:
//移動直線的時候為紅色
this.pictureBox1.Refresh();//重新整理介面,不然的話整個介面上到處都是線
newPen.Color = Color.Red;
line.endPoint = p;
g.DrawLine(newPen, line.startPoint, line.endPoint);
上面只是一個簡單的例子,等以後有時間了再好好學習一下Graphics中其他的內容。