首页 > 代码库 > 写给笨蛋徒弟的学习手册(2)——简单的画图程序(1)

写给笨蛋徒弟的学习手册(2)——简单的画图程序(1)

简单的一个C#画图程序,实现画直线、圆、矩形、多边形以及橡皮擦的功能,可以自定义画笔颜色、线宽和橡皮擦大小。

通过这个程序,给你讲C#的一些基础知识,包括接口、继承、属性、如何引用命名空间和一点点的事件。 在这个程序中用到了C#自带的类库System.Drawing。

首先,先看一下最终的成果。 

————————————————————————————

                                假装有图

———————————————————————————— 

记得我告诉你的三个步骤吗?

1.首先整体思考,画图的话我们至少需要三方面,画板画笔以及要画的图形,画板和画笔,我们可以用C#自带的类Graphics、Pen来实现,所以我们只需要自定义一个图形类,其中包括直线、圆、矩形、多边形的画法;

2. 其次我们取图形类来思考,这个类需要实现什么功能?实现这些功能我们需要用到哪些变量?这些变量我们如何定义?既然这个类实现的是画图的功能,首先我们必须有一个Draw()方法,我们可以定义一个Draw()来实现,也可以分别定义不同的方法,比如DrawLine()、DrawCircle()、DrawRectangle() 等,记得我和你说的如何一个函数吗?要尽可能的只实现特定的功能,所以最好的办法是选择第二种。当我们调用这些方法的时候,我们还要考虑用那些参数,既然是画图,那么画笔是少不了的,还有既然要画,那么一定需要一个画板,ok,DrawLine(Pen p,Graphics g)。

3.最后,我们要考虑一个问题,就是具体的画图方法。虽然没吃过猪肉但是我们也看过猪跑对吧。这里我们用直线来举例子,最简单的办法,代码中确定俩个点,然后程序运行的时候画出来,很显然,这种办法不是我们需要的,再好一点的,手动的在画板上选择俩个点,俩点确定一条直线,然后画直线,但是这样我们只能在屏幕上瞎点,并不能实时的看到直线画到哪里了,也没有意思。最好的方法,就是橡皮筋效果实现画线,即我们首先在屏幕上点一个起始点,然后另一个点暂时不确定,随着我们鼠标的拖动,我们以鼠标当前位置为终点,然后每次移动鼠标都重新连接起始点和终点画一条直线。这样就实现了橡皮筋效果。

所以的过程我们都考虑清楚了,那么接下来开始做吧。

写给笨蛋徒弟的学习手册(2)——简单的画图程序(1)