C#GDI+ winform简单画图(1)

     最近一直在画自定义控件,所以研究一下GDI+对画图的操作,先介绍一下GDI,全称为Graphics Device Interface,含义是图形设备接口,它的主要任务就是负责系统与绘图程序之间的信息交换。

     对于画图其实并不是很麻烦的,我们只需要会用几个对象就行,一个是Graphics对象,该对象封装了一个绘图图面,Graphics对象的创建一般是用控件自带的CreateGraphics()方法得到该对象,还可以用控件的Paint或者重写窗体的OnPaint事件里面有一个PaintEventArgs e的参数,用e.Graphics获取Graphics对象,另一种方法是Bitmap bitmap = new Bitmap(this.Width, this.Height);  Graphics gra = Graphics.FromImage(bitmap); 创建。这个对象是画图必须的

   有了画面,我们下面要得就是画笔了,在这里我们用到是Pen类,它提供了画笔,创建简单的画笔我们只需要Pen p=Pens.Red;Pens提供了各种颜色的画笔,我们还可以用new来创建画笔。例如:Pen p = new Pen(Color.Blue,12);该句是创建了一个颜色为蓝色,宽度为12的画笔。

   这些对象都是System.Drawing;命名空间所提供的,

  现在我们用窗体的Paint事件来举一个画矩形的简单的例子: 

          Graphics g = e.Graphics; //利用该事件的参数e创建画面对象
          Rectangle r = new Rectangle(10, 10, 300, 200);//是创建画矩形的区域  

          g.DrawRectangle(Pens.Red, r);//g对象提供了画图形的方法,我们只需调用即可

QQ截图20111127172922

上边图就 是该三句代码所完成的,只是画了一个矩形的轮廓,g对象还提供了填充画的区域方法:如

1

实现填充我们将用到g对象的提供另一个方法,g.FillRectangle(Brushes.Red, r);另外还用到了Brush对象,该对象是画刷,用来填充指定的颜色的,它的创建和Pen的创建是一样的,可以用new,也可以用Brushes类来直接创建

画其他图形和画矩形是一样的,我们只需调用相应的方法即可,可以自己试试

posted @ 2011-11-27 17:37  SunRain117  阅读(18103)  评论(0编辑  收藏  举报