hahacjh
既然选择了远方 便只顾风雨兼程

 

代码
//使用PaintEventArgs 参数创建Graphics对象
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(
new SolidBrush(Color.Red), 10, 20, 13, 7);
}


private void button1_Click(object sender, EventArgs e)
{
Graphics graph;

//使用窗口句柄创建Graphics
graph = Graphics.FromHwnd(this.Handle);
graph.FillRectangle(
new SolidBrush(Color.Blue), 30, 20, 13, 7);

//使用控件句柄创建Graphics
graph = Graphics.FromHwnd(this.pictureBox1.Handle);
graph.FillRectangle(
new SolidBrush(Color.Red ), 30, 20, 13, 7);

//创建梯度
System.Drawing.Drawing2D.LinearGradientBrush lineGrBrush;
graph
= Graphics.FromHwnd(this.Handle);
lineGrBrush
= new System.Drawing.Drawing2D.LinearGradientBrush(
new Point(10, 30),
new Point(30, 40),
Color.FromArgb(
255, 255, 0, 0),
Color.FromArgb (
255,0,0,255));
graph.FillRectangle(lineGrBrush,
10, 30, 20, 10);

//路径梯度
Rectangle rectSquare;
System.Drawing.Drawing2D.GraphicsPath graphPath;
System.Drawing.Drawing2D.PathGradientBrush brushSquare;

graph
= Graphics.FromHwnd(this.Handle);
graphPath
= new System.Drawing.Drawing2D.GraphicsPath();
rectSquare
= new Rectangle(50, 20, 23, 27);
graphPath.AddRectangle(rectSquare);
brushSquare
= new System.Drawing.Drawing2D.PathGradientBrush(graphPath);
brushSquare.CenterColor
= Color.FromArgb(255, 0, 255, 0);
brushSquare.SurroundColors
= new Color[] { Color.FromArgb(255, 0, 0, 255) };
graph.FillRectangle(brushSquare, rectSquare);

//一定要注意释放资源....
graph.Dispose();
}

 

 

posted on 2010-03-19 19:24  hahacjh  阅读(3257)  评论(0编辑  收藏  举报