首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

画图板自定义格式封存

2012-11-03 
画图板自定义格式保存?四、???在监听器类中得到动作命令:??? 在动作命令点击“保存”和“打开”按钮时分别调用

画图板自定义格式保存

?

四、???在监听器类中得到动作命令:

??? 在动作命令点击“保存”和“打开”按钮时分别调用文件操作类中的savefile方法和openpic方法。

// 动作命令的方法体,实现点击按钮转换按钮功能的作用

???? public void actionPerformed(ActionEvent e){

???????? // 得到按钮的动作命令

???????? String st = e.getActionCommand();

???????? if (st.equals("颜色")) {

????????????? // 弹出一个颜色选择器

????????????? c =javax.swing.JColorChooser.showDialog(null, "请选择颜色!",

?????????????????????? java.awt.Color.black);

???????? }

???????? if (st.equals("保存")) {

????????????? // 创建File对象

????????????? FileUtil fu = new FileUtil();

????????????? fu.saveFile(path, shapes);

???????? }

???????? if (st.equals("打开")) {

????????????? // 创建一个FileUtil对象

????????????? FileUtil fu = new FileUtil();

????????????? Anothertime.shapes = fu.openPic(path);

????????????? // 刷新是保存图片在窗体上显现

????????????? Anothertime at = newAnothertime();

????????????? at.paint(g);

???????? }

???????? else {

????????????? type = st;

???????? }

所用到的技术分析:

??? 文件输入输出流的应用,监听器的添加,与按钮功能的实现,方法的调用与参数的传递。

操作中遇到主要问题:

1、原来制作的画板在Shape抽象类中由于没有定义type类型的变量,而在Rect和Line画图方法类中也没有type类型变量,只在监听器类中定义了这么一个变量,因此在文件保存操作中String type = shape.type;的调用就会出现空指针异常的产生;

?

2、由于类中的继承同时由于在各类中相同涵义的变量、方法所用名称相同,导致在调用时混淆了方法与变量,导致程序出错。

?

画图板保存的拓展分析:

??? 该画图板保存的路径是固定的,因此可以考虑用Jfilechooser实现路径的选择使自己的文件可以放到指定位置;美化界面;定义其他格式,从而可以用普通的图片查看器打开自己绘制的图片。

?

热点排行