废话也不说了
我实在能力有限,这个题做不出来
所以向大家求助题目要求
a)具有绘制直线,园,矩形,三角形等的功能
b)可以将绘制的图形删除
c)能将用户任意绘制的任意数目的图形保存到文件,也可以从文件恢复就这3个要求,大家能帮我解决吗

解决方案 »

  1.   

    呵呵,这可是一个简单的画图的IDE啊,应该有难度
    我记得在sun的网站上有类似的sample的,但不一定完全符合你的要求,你自己找找吧
      

  2.   

    恩,还好,不难!如果要支持删除的话,最简单的办法就是继承Control,然后在上面绘制形状文件存储可以写下一些形状的关键参数,然后恢复也容易。
    或者Serializer也可以,呵呵。
      

  3.   

    代码没有,设计如下,抛砖引玉
    class abstract shape{readFromXML();writeToXML();}
    class line extends shape{int x1,y1,x2,y2;}
    class circle ....自行约定XML表示图形的格式,类似下面这样;
    <root>
      <shape type="line" style="">
      <shape type="circle ...
    </root>
    绘制过程中,在内存中维护XML Dom
    读文件和写文件是简单的XML操作
      

  4.   

    有很多例子的
    我就看过这样的图形编辑的例子
    绘制图形只是把鼠标事件的函数给换了
    比如画圆
    我们点击画圆的按钮,其实是在告诉鼠标现在调用画圆的函数
    鼠标点击的当前位置是圆心,拖动后当前位置和圆心的距离是半径就是这个思路
    至于保存的问题,就是保存成什么.gif文件呀
    然后打开这个文件绘制完成后在重新保存为新的.gif文件这是最简单的!!
    哈哈
      

  5.   

    呵呵学习
    赞成 xdop(鸿飞处) 的意见估计保存成GIF的就很难了。
      

  6.   

    呵呵,我也觉得不是很难。解决思路:
    写一个继承JComponent类的子类A,重写子类A的paint方法,在该方法里写出对该组件的图形绘制代码
    这样在别的地方调用add(A),如果要删除些图形,就Remove(A),就这思路,你可以实现你的要求。
    在保存时就保存A的属性,如长宽高、color等,文件类型用XML比较合适,JAVA与XML联系密切,用JDOM、dom、SAX都可以实现读取,读出后只要构造A,就可以显示出来了。
      

  7.   

    我就是传说中的高人!但是比较忙,给你个思路吧:1,具有绘制直线,园,矩形,三角形等的功能
      这是基本图形API的使用,DIY
    2,可以将绘制的图形删除
      用命令模式
    3,能将用户任意绘制的任意数目的图形保存到文件,也可以从文件恢复
      将状态序列化也就是writeObject,readObject啦慢慢琢磨吧,打这么多字,哦累了!
      

  8.   

    我敢打包票你没有看重量级的书(java 核心技术或者think in java)。对OOP理解不深
      

  9.   

    在我的blog里面有我的一个绘图程序,其实是做公文流的客户端的,有源代码下载,完全符合你的要求,你可以看看
      

  10.   

    就是我的名字上面的那个blog地址,详细地址是http://sunfruit.blogchina.com/867097.html