JAVA电子相册课程设计

上传人:M****1 文档编号:456117012 上传时间:2022-08-30 格式:DOC 页数:19 大小:918KB
返回 下载 相关 举报
JAVA电子相册课程设计_第1页
第1页 / 共19页
JAVA电子相册课程设计_第2页
第2页 / 共19页
JAVA电子相册课程设计_第3页
第3页 / 共19页
JAVA电子相册课程设计_第4页
第4页 / 共19页
JAVA电子相册课程设计_第5页
第5页 / 共19页
点击查看更多>>
资源描述

《JAVA电子相册课程设计》由会员分享,可在线阅读,更多相关《JAVA电子相册课程设计(19页珍藏版)》请在金锄头文库上搜索。

1、中南大学JAVA课程设计 专业班级: 姓 名: 学 号: 指导老师: 目录一设计背景1二需求分析13.1功能说明13.2 布局说明23.3 主要的工具包23.4程序主要流程图2四系统功能模块结构34.1 登录相关模块34.2 背景音乐模块44.3 相册相关模块54.4 自动播放模块64.5 相片相关模式6五系统实现85.1登录界面设计85.2 相册界面设计95.3 新建相册115.4照片界面设计125.5播放功能设计14六心得体会16 一设计背景电子相册是现在时下很流行的一种网络元素,它可以应用于很多的领域。其以静态照片为素材,配合动感的背景、字幕等视频处理的特殊效果,配上音乐就可制作成电子相

2、册。制作好的电子相册可以在电脑上,各类影碟机上,以及手机和MP4里都能观看。当然,如果考虑到长期保存的话,也可以保存在硬盘上,也便于随时调阅、欣赏,永久保存。二需求分析1.采用的形式为:java application2.需要实现的主要功能是:(1)不同用户的登录模块(2)播放方式设置,需要要实现手动播放和自动播放照片等功能。(3)附加背景音乐。(4)设置照片标题。三概要设计3.1功能说明该程序可以实现用户登录、新建相册、新增照片、删除照片、打开照片、播放照片等功能。3.2 布局说明由于本程序采用的是Java swing编程,所以采用的是布局为:javax.swing.GroupLayout,

3、即群组布局。3.3 主要的工具包该程序中用到如下几个工具包,为:java.applet,java.awt,java.io,java.util以及javax.imageio和javax.swing。3.4程序主要流程图注:该流程图中部分是根据用户可能出现的操作进行的。打开程序N登录登陆成功Y相册界面删除相册打开相册重命名相册新建相册删除输入相册名字进入相册界面输入相册名字删除照片移动照片打开照片设置标题自动播放添加照片下一张间隔时间暂停播放上一张四系统功能模块结构该电子相册程序分为登录相关模块、背景音乐播放模块、相册相关模块、照片相关模块、自动播放模块这五个模块。4.1 登录相关模块(1)业务描

4、述:用户注册、登录功能。(2)业务说明:当用admin用户登录时,进入管理员界面,可以进行账户的添加、删除。应用普通账户登录,进入使用界面。 4.2 背景音乐模块(1)业务描述:自动播放音乐。(2)业务说明:当用户打开某一相册,点选自动播放时,背景音乐播出,退出背景音乐消失。(3)程序代码:public class autodisplayListener2 extends JFrame implements ActionListener int i=-1; JDialog dialog=new JDialog(); int inttime=1;/ public autodisplayListe

5、ner() / new Timer(1000,this).start(); / while(true); / Overridepublic void actionPerformed(ActionEvent e) autodisplayListener listener = new autodisplayListener(); Timer t = new Timer(1000,listener); musicplay= new MusicPlay(D:1.01.wav); playview = new PlayView(model, Controller.this, userView.getSe

6、lectedAlbum().getText(); playview.getTimes().addActionListener(new ActionListener()Overridepublic void actionPerformed(ActionEvent e) inttime = Integer.parseInt(playview.getTimes().getSelectedItem().toString();System.out.println(inttime+inttime); ); 4.3 相册相关模块(1) 业务描述:相册及相关界面。(2) 业务流程:拥有新建、打开、重命名、删除

7、相册的功能4.4 自动播放模块(1)业务描述:自动播放所导入的图片。(2)业务流程:i=-1YesNoi=i+1开始i=0editPhoto获得第i个图像的信息在主窗口显示editPhotoi=photoList-1重绘窗口延迟1秒是否结束线程Yes结束NoiphotoListYesNo 4.5 相片相关模式(1)业务描述:照片管理界面。(2)业务流程:拥有添加照片、打开照片、移动照片、删除照片、设置标题、自动播放等功能五系统实现5.1登录界面设计public LoginView(String title) super(title);setPreferredSize(new Dimension

8、(WIN_WIDTH, WIN_HEIGHT);setMinimumSize(new Dimension(WIN_WIDTH, WIN_HEIGHT);GridBagLayout gridbag = new GridBagLayout();GridBagConstraints constraints = new GridBagConstraints();setLayout(gridbag);constraints.weightx = 1.0;constraints.weighty = 1.0;constraints.gridx = 0;constraints.gridy = 0;constra

9、ints.insets = new Insets(20,0,40,0);constraints.gridwidth = GridBagConstraints.REMAINDER;JLabel loginText = new JLabel(电子相册登录:);gridbag.setConstraints(loginText, constraints);add(loginText);constraints.gridx = 0;constraints.gridy = 1;constraints.insets = new Insets(0,5,5,0);constraints.gridwidth = 1

10、;JLabel usernameText = new JLabel(用户名:);gridbag.setConstraints(usernameText, constraints);add(usernameText);constraints.gridx = 1;constraints.gridy = 1;constraints.anchor = GridBagConstraints.WEST;usernameField = new JTextField(, 10);gridbag.setConstraints(usernameField, constraints);add(usernameFie

11、ld);constraints.gridx = 0;constraints.gridy = 2;constraints.anchor = GridBagConstraints.CENTER;loginButton = new JButton(登录);gridbag.setConstraints(loginButton, constraints);add(loginButton);constraints.gridx = 0;constraints.gridy = 3;constraints.fill = GridBagConstraints.HORIZONTAL;constraints.grid

12、width = GridBagConstraints.REMAINDER;errorMessage = new JLabel();gridbag.setConstraints(errorMessage, constraints);add(errorMessage);5.2 相册界面设计public UserView(Model model, Controller controller) super(用户: + model.getUser().getUserID();this.controller = controller;this.model = model;setPreferredSize(

13、new Dimension(WIN_WIDTH, WIN_HEIGHT);setMinimumSize(new Dimension(WIN_WIDTH, WIN_HEIGHT);setResizable(false);getContentPane().setLayout(new BorderLayout();/Left panelbuttonPanel = new JPanel();buttonPanel.setPreferredSize(new Dimension(WIN_WIDTH/4, WIN_HEIGHT);buttonPanel.setMinimumSize(new Dimension(WIN_WIDTH/4, WIN_HEIGHT);buttonPanel.setLayou

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号