C# GDI画图

发布时间:2017-4-25 6:47:02 编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"C# GDI画图",主要涉及到C# GDI画图方面的内容,对于C# GDI画图感兴趣的同学可以参考一下。

命名空间:System.DrawingGraphics对象:可以理解为一只画笔,要在哪个控件上绘图就要得到对应控件的Graphics对象。获取Graphics对象一般有两种方式:1、控件.CreateGraphics()   //但是要注意通过这种方式创建后要调用g.Dispose()方法释放资源 Graphics g = this.CreateGraphics();   //这是Form窗体中所以用this // Graphics G = this.panel1.CreateGraphics();   这是在Panel1控件中创建  g.DrawEllipse(Pens.Blue,100,200,50,60);//画出一个空心(Draw)的椭圆 调用的是Pens 坐标(100,200) Width和Height分别是50、60 g.FillEllipse(Brushs.Blue,200,100,50,60);//画出一个实心(Fill)的椭圆 调用的是Brushs g.Dispose();  2、在重写OnPaint()方法中通过参数PaintEventArgs e.Graphics;来获得,一般使用在Paint事件中  //通过这种方式一般不需要手动调用Dispose();区别OnPaint()与窗体的Paint事件  private void Form1_Paint(object sender, PaintEventArgs e)        {            Graphics g = e.Graphics;  //直接通过参数e.Graphics获得,而且这种方法不用手动去Dispose()            g.DrawEllipse(Pens.Blue,50,50,30,50);        }可以new自己的特性pen:eg: private void Form1_Paint(object sender, PaintEventArgs e)        {            Graphics g = e.Graphics;            Pen pen = new Pen(Color.Yellow, 5);  //可以创建一个有自己特性的Pen            g.DrawLine(pen, 20, 30, 50, 60);            pen.Dispose();                  //但是new出来的对象要记得释放          //  g.DrawEllipse(Pens.Blue,50,50,30,50);        }三个常用封装:Point、Size、Rectangle private void button3_Click(object sender, EventArgs e)        {            Graphics g = this.CreateGraphics();            Point point = new Point(100,200);   //对坐标点的封装            Point point2 = new Point(20,30);           // g.DrawLine(Pens.Black, point, point2);             Size size = new Size(10,20);       //对形状大小的封装            Rectangle rect = new Rectangle(point2, size);  //对一个矩形区域的封装                                   g.FillRectangle(Brushes.Brown, rect);           // g.FillRectangle(Brushes.Blue, point.X,point.Y,size.Width,size.Height);  封装成坐标的XY访问更方便            //g.FillRectangle(Brushes.Blue, 100, 200, 60, 80);            g.Dispose();        }

上一篇:C#winform 走马灯程序
下一篇:Linux--线程编程

相关文章

关键词: C# GDI画图

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款