小巧可爱的MiniDraw
来源:互联网 发布:昆仑大数据 编辑:程序博客网 时间:2024/04/28 05:44
上文用于演示的程序名叫MiniDraw,也许你已有所察觉――这应该是一个画图程序。不错,我的实验品就是经典的画图程序,并且这几天我已经把它编写出来了。这是一个小巧可爱的画图程序,麻雀虽小,五脏俱全,屏幕截图如下:
从图中可以看出,每个图形就是一个对象,支持各种属性设置,以及鼠标拖拉。我将MiniDraw能做的事情列举了出来:
l 存盘读盘,这依赖于MFC序列化的强大威力。
l 鼠标拖拉图形对象,为了不至于引来一大堆复杂的问题,我将拖拉的图形限定为一个,即你只能选中一个图形。
l 设置图形的各种属性,例如填充色,线条宽度,叠放次序等。
l 可设置画布的填充色,以及最小尺寸,如果小于这个尺寸,将出现滚动条。
当然,以一个专业程序的角度来看,MiniDraw局限性也非常的大:
l 不能进行剪贴板的操作,不能进行撤消重做,其实这涉及到数据层的设计,这是一个高层次的主题,像这样的小程序就免了吧。
l 图形类型比较少,只有三种。
l 图形的创建过程比较简陋,点击工具栏按钮时直接创建,没有经过鼠标的操作来创建。
l 图形不能多选。
l 程序的整体设计比较随意,扩展性不够强。
我得为自己辩护一下,时间太少了,这个小程序是晚上编写的,前后只有一个星期,而且是用代码+资源的方式完成的。所以,做到这个程度也差不多了吧,如果你觉得哪里不好,可以随意修改之,有一些明显改进的话,可否通知我一下,让我也拜读一下。
MiniDraw可能会有下一个修改版本,这是我初步的改进计划:
l 对创建过程的改进,支持鼠标拖拉创建。
l 增加几个图形:多边形,曲线,自由线。
l 主窗口增加多标签。
l 图形支持多选。
l 对图形的点击测试进行优化。
我不保证这些修改都能完成,这要看是否有足够的时间,如果时间允许,过年之前应该可以发上来,敬请期待。
MiniDraw涉及到一些技术,包括序列化,GDI绘制,通用控件的使用,这些都将作为以后文章的主题。
你可以从这里下载MiniDraw,体会一下它的小巧可爱:
http://download.csdn.net/source/318010
- 小巧可爱的MiniDraw
- MiniDraw
- MiniDraw的一些小总结
- 可爱的
- 小巧的hsqldb
- 小巧的Eclipse快捷键
- 小巧实用的日历
- 小巧点的strstr
- AsyncTask的小巧用法
- 可爱的图,送给可爱的人们
- 挺可爱的强盗
- [图片] 可爱的Google
- 可爱的MM~
- 我的可爱老公
- 可爱的猪:)
- 可爱的女友
- 可爱的卡片!
- 可爱的孩子们
- 中国的银行:你咋就这么霸王?!
- 几种所见所得的在线编辑器
- SYSTEM32 下的几乎所有文件的简单说明
- Oracle函数返回游标,在JAVA中显示结果
- JavaScript简介
- 小巧可爱的MiniDraw
- STL map常用操作简介
- HTML 4.01 Specification
- ECMAScript基础
- 苏仪数据分析软件 更新 Analys1.2.2 2007/12/27
- 为钱做事,容易累;为理想做事,能够耐风寒;为兴趣做事,则永不倦怠。
- 面试ASP.NET程序员的笔试题和机试题
- 我的毕业设计题目
- 漫谈JAVA