java电子相册实习报告及代码.docx
- 文档编号:656825
- 上传时间:2022-10-11
- 格式:DOCX
- 页数:27
- 大小:34.13KB
java电子相册实习报告及代码.docx
《java电子相册实习报告及代码.docx》由会员分享,可在线阅读,更多相关《java电子相册实习报告及代码.docx(27页珍藏版)》请在冰豆网上搜索。
java电子相册实习报告及代码
一、程序设计
一、课程设计的目的、任务与要求
1、目的
(1)掌握Java语言的程序设计方法;
(2)理论联系实际,进一步提高学生的软件开发技术;
(3)培养学生分析、解决问题的能力;
(4)提高学生实践论文撰写能力。
2、任务及要求
(1)熟悉JAVA开发环境,掌握JAVA程序的编译和运行;
(2)掌握JAVA基本编程技术和方法;
(3)掌握GUI图形界面编程技术;
(4)了解异常处理机制。
二、设计方式和安排
1.分组选题:
最多2人为一组,每组一个课题(可根据课题工作量大小,合理分配人数),每组设组长一名,负责该组设计工作的协调、分工等。
设计过程:
2.分析设计准备阶段(按组讨论、对系统功能进行分析,并进行明确分工);
3.编程调试阶段(绘制流程图,编制源程序;上机调试,修改程序)
三、考核内容和方式
1、在设计期间,学生要按时上机,设计结束根据记录的设计材料整理成设计说明书。
设计说明书中应写下设计中的主要收获,要求对问题有一定的分析,文字简短明确流畅。
2、结合学生的动手能力,独立分析解决问题的能力和创新精神,设计成绩由指导教师根据考勤、设计说明书质量分优、良、中、及格和不及格五等。
四、设计内容
本次实践教学采用学生集中在学校网络机房上机,指导老师指导的形式。
要求学生用所学的面向对象程序设计语言——JAVA来编写程序,实现特定功能,以加深对面向对象程序设计这个概念的理解。
这次我编写的程序是电子相册,主要功能是实现本次设计的图片查看器实现了在用户选定的文件目录下循环浏览指定后缀的图片文件,并且可以对选择的图片进行放大,缩小,左旋,右旋,另存,彻底删除等操作。
二、程序代码
一、程序截图
二、程序代码
importjava.awt.*;
importjava.awt.event.*;
importjava.awt.geom.*;
importjava.awt.image.*;
importjavax.swing.*;
importjavax.swing.filechooser.*;
importjava.io.*;
importjava.applet.*;
publicclasspicextendsjavax.swing.JFrame{
Imagepic;//查看的图片
BufferedImagebufImage;//用于显示的缓冲区图像
BufferedImageoriBufImage;//原始缓冲区图像
Graphics2DbufImageG;//缓冲区图像的图形环境
Stringpath,filename,dir;//需要查看图片的路径
String[]pics;//目录下所有指定格式的图片
intpicWidth,picHeight;//图片大小
inti=0;
finaldoubleZOOM_PERCENT=0.15;//每次放大和缩小的倍率
finalStringFILE_TYPE=".jpg";
booleanhasPic,isangled;
doublescaleX;//图像水平方向的缩放因子
doublescaleY;//图像竖直方向的缩放因子
doubleradius;//旋转角度
FilterfilterJpg;
publicpic(){
initComponents();
}
@SuppressWarnings("unchecked")
//
privatevoidinitComponents(){
buttonGroup1=newjavax.swing.ButtonGroup();
buttonGroup2=newjavax.swing.ButtonGroup();
jButton10=newjavax.swing.JButton();
openbtn=newjavax.swing.JButton();
zoominbtn=newjavax.swing.JButton();
zoomoutbtn=newjavax.swing.JButton();
oripicbtn=newjavax.swing.JButton();
prebtn=newjavax.swing.JButton();
nextbtn=newjavax.swing.JButton();
angleleftbtn=newjavax.swing.JButton();
anglerightbtn=newjavax.swing.JButton();
deletebtn=newjavax.swing.JButton();
savebtn=newjavax.swing.JButton();
exitbtn=newjavax.swing.JButton();
pathInfo=newjavax.swing.JLabel();
jMenuBar1=newjavax.swing.JMenuBar();
jMenu1=newjavax.swing.JMenu();
jMenu2=newjavax.swing.JMenu();
jButton10.setText("jButton10");
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
openbtn.setText("打开");
openbtn.addActionListener(newjava.awt.event.ActionListener(){
publicvoidactionPerformed(java.awt.event.ActionEventevt){
openbtnActionPerformed(evt);
}
});
openbtn.addKeyListener(newjava.awt.event.KeyAdapter(){
publicvoidkeyPressed(java.awt.event.KeyEventevt){
openbtnKeyPressed(evt);
}
});
zoominbtn.setText("放大");
zoominbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
zoominbtnMouseClicked(evt);
}
});
zoomoutbtn.setText("缩小");
zoomoutbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
zoomoutbtnMouseClicked(evt);
}
});
oripicbtn.setText("还原");
oripicbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
oripicbtnMouseClicked(evt);
}
});
prebtn.setText("上一张");
prebtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
prebtnMouseClicked(evt);
}
});
nextbtn.setText("下一张");
nextbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
nextbtnMouseClicked(evt);
}
});
angleleftbtn.setText("左旋");
angleleftbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
angleleftbtnMouseClicked(evt);
}
});
anglerightbtn.setText("右旋");
anglerightbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
anglerightbtnMouseClicked(evt);
}
});
deletebtn.setText("删除");
deletebtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
deletebtnMouseClicked(evt);
}
});
savebtn.setText("另存为");
savebtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
savebtnMouseClicked(evt);
}
});
exitbtn.setText("退出");
exitbtn.addMouseListener(newjava.awt.event.MouseAdapter(){
publicvoidmouseClicked(java.awt.event.MouseEventevt){
exitbtnMouseClicked(evt);
}
});
jMenu1.setText("File");
jMenuBar1.add(jMenu1);
jMenu2.setText("Edit");
jMenuBar1.add(jMenu2);
setJMenuBar(jMenuBar1);
javax.swing.GroupLayoutlayout=newjavax.swing.GroupLayout(getContentPane());
getContentPa
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- java 电子相册 实习 报告 代码