浅析C#中图形编程__教程 |
|
日期:2007-5-20 0:33:25 人气:73 [大 中 小] |
|
|
|
像Java一样,C#提供了一整套相当丰富的类库、方法以及事件以供开发者使用。C#还引入了GDI+,它是由GDI演变而来的,具有比GDI更强大的功能而且简化了程序员的编程工作。所以开发者运用这些,就可以很方便的开发出具有强大图形图像功能的应用程序了。本文,笔者就通过一些实例像读者介绍一下C#中的图形编程的基本知识。
简单实例:
首先,让我们从例子开始,以下是一个最简单的实例:
using System; using System.Windows.Forms; using System.Drawing;
public class Hello:Form { public Hello() { this.Paint += new PaintEventHandler(f1_paint); }
private void f1_paint(object sender,PaintEventArgs e) { Graphics g = e.Graphics; g.DrawString("你好,C#!",new Font("Verdana",20), new SolidBrush(Color.Tomato),40,40); g.DrawRectangle(new Pen(Color.Pink,3),20,20,150,100);
} public static void Main() { Application.Run(new Hello()); }
} |
在上面的实例中,我们用到了一个方法:DrawString(),它带有5个参数。同时,我们发现在运用DrawString()方法以前,我们先创建了一个Graphics类型的对象g=e.Graphics,这就说明了在运用任何图形类的方法以前我们必须先创建该类的一个实例化对象。在DrawString()方法后,我们用到了DrawRectangle()方法,其实我们还可以运用其他的方法来画椭圆或是多边形等等。第一个实例还是相当简单易懂的,不是吗?
变换图形的度量单位:
在图形编程中,默认的图形度量单位是象素。不过,你可以通过修改PageUnit属性来修改图形的度量单位,可以是英寸或是毫米等。实现方法如下:
Graphics g = e.Graphics; g.PageUnit = GraphicsUnit.Inch |
操作颜色选择对话框:
在实际运用特别是图形图像编程过程中,我们可能会经常碰到颜色选择对话框(以及下面要提到的字体选择对话框)。使用颜色选择对话框,我们可以让用户来选择系统预定的颜色以及用户自定义的颜色。在使用颜色选择对话框之前,我们必须先创建一个ColorDialog类型的对象:
ColorDialog cd = new ColorDialog(); |
然后,我们就可以用ShowDialog()方法来显示颜色选择对话框了。之后,就可以通过调用用户的颜色选择进行相关的图形操作了。
以下,我给大家一个实例。该实例中有一个按钮和一个文本框,通过点击按钮可以调出颜色选择对话框,根据用户的颜色选择就可以设置文本框的背景颜色了。
using System; using System.Drawing; using System.Windows.Forms;
public class Clr:Form{ Button b1 = new Button(); TextBox tb = new TextBox(); ColorDialog clg = new ColorDialog();
public Clr(){ b1.Click += new EventHandler(b1_click); b1.Text = "选择颜色"; tb.Location = new Point(50,50); this.Controls.Add(b1); this.Controls.Add(tb); }
public void b1_click(object sender, EventArgs e){ clg.ShowDialog(); tb.BackColor = clg.Color; }
public static void Main() { Application.Run(new Clr()); }
}
|
操作字体选择对话框:
字体是图形编程的一个重要组成部分,通过设置不同的字体,你可以在程序中达到不同的视觉效果。和以上的颜色选择对话框的创建差不多,你可以很方便地创建一个字体选择对话框,并通过它来让用户选择其所需的字体。
下面同样给出一个实例,这个实例和上面的实例差不多,只是用来字体选择对话框代替了原来的颜色选择对话框,最后是根据用户的字体选择来设置文本框的字体。
using System; using System.Drawing; using System.Windows.Forms;
public class Fonts:Form { Button b1 = new Button(); TextBox tb = new TextBox(); FontDialog flg = new FontDialog();
public Fonts() { b1.Click += new EventHandler(b1_click); b1.Text = "选择字体"; tb.Location = new Point(50,50);
this.Controls.Add(b1); this.Controls.Add(tb); }
public void b1_click(object sender, EventArgs e) { clg.ShowDialog(); tb.FontName = flg.Font; }
public static void Main() { Application.Run(new Fonts()); }
} | |
|
出处:本站原创 作者:佚名 |
|
|