ImageVerifierCode 换一换
格式:DOCX , 页数:18 ,大小:58.90KB ,
资源ID:6557009      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6557009.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(java课程设计日记本.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

java课程设计日记本.docx

1、java课程设计日记本1 需求分析 日记本是很平常的东西,很多人都有记日记的习惯,有人记账,有人记事、有人记下心情。随着计算机技术的发展,很多家庭都买了电脑,开始上网,开始使用电脑来办公、打字等。所写现在也有很多的人在使用电脑写小说,写博客等,受此启发我就萌生了编写一个日记本,用电脑来写日记的想法。很多事我们不想忘记,于是写进日记本里,多年后翻出来再看看,很是惬意。大多数人都使用的是纸质的日记本,这中日记很难保存,容易丢失,也容易遭到水浸等物理破坏,这样我们的日记就丢了。同纸质的日记本相比较,用软件日记本不仅环保,而且安全方便,不怕被别人偷看。软件日记本可以很方便的携带只要存在电脑硬盘或者U盘

2、中就可以了。1.1用户分析 这个软件面向的用户是拥有个人电脑,而其具有写日记的习惯的人。用户使用的软件必须简单容易使用,在此基础上尽可能多的提供人性化功能,丰富软件的内涵。同时软件必须尽量保证不会因用户的不当操作而使用户受到严重的经济、财产、精神损失。软件必须具有很强的可靠性,不会无故终止运行、死机、退出等。1.1.1用户要求具备以下基本功能: a 编辑日记:包括改变字体大小 、改变字体颜色等。 b 管理日记:包括保存及删除日记、按日期分组日记等。1.1.2除以上功能外,可另曾特色功能: a 音乐播放的功能。 b 编辑背景变换的功能。 c 身份验证的功能。 d 日记文件加密存储的功能。1.2软

3、件界面与接口需求1.2.1界面需求界面的原则要求:方便、简洁、美观、一致等。整个界面要保持友好、简易的风格。a输入设备:键盘、鼠标。b输出设备:显示器。c显示风格:应用程序窗口界面。1.2.2接口需求软件功能比较简单,暂时不需要接口方面的需求。1.3目标软件其他需求a.运行环境需求:要求安装Java Development Kit(JDK) v1.5或以上版本环境。 b.进度要求:2009年6月底必须完成开发,并通过测试。2 概要设计 本课程设计是一个实用的日记本程序,主要实现日记撰写、按月份、日期分类日记、字体设置、身份认证、音乐播放、背景随机变化等。一个普通的日记本无需使用数据库,如果要使

4、用数据库则没有适合的数据库可以使用,桌面数据库太小不能满足需求,而其他大型数据库则又昂贵而不合算,所写我要开发的日记将以文本文件(windows下的.txt文件格式)来存储,这样做的好处是显而易见的。21登陆验证日记是个人的隐私,通常日记的拥有者不希望他人看到自己所写的日记,为了实现基本的保密,程序进行了用户身份认证,来确认是否有权使用。认证流程如下:图 2-1 身份验证功能流程2.2 日记本各部分功能 日记本的基本功能就是撰写日记,对写好的日记要能够进行保存、修改、删除等操作。这些都是一个日记本所具有的最基本的功能,除此之外本日记本还增加了其他功能。具体模块功能有:a 编辑日记:包括改变字体

5、大小 、改变字体颜色等。 b 管理日记:包括保存及删除日记、按日期分组日记等。 c 音乐播放的功能。 d 编辑背景变换的功能。 e 身份验证的功能。 f 日记文件加密存储的功能。具体功能层出图如下所示:图 2-2 日记本层次功能3 详细设计 下面是程序的全部代码与详细注释。/* 程序文件名称:Diary.java* 功能: 日历本*/package diary;import javax.swing.*;import javax.swing.tree.*;import java.awt.*;import java.awt.event.*;import javax.swing.event.*;im

6、port java.io.*;import sun.audio.*;import java.util.*;/ 日记本类class Remember extends JFrame implements TreeSelectionListener,ActionListener JTree tree=null; int i=0,r=255,g=255,b=255; JTextArea text=new JTextArea( ,20,30); DefaultMutableTreeNode root; DefaultMutableTreeNode month=new DefaultMutableTree

7、Node13; /对象数组 JButton b_save=new JButton(保存), b_del=new JButton(删除), b_fontCommen=new JButton(普通), b_fontBig=new JButton(大字), b_fontRed=new JButton(红色), b_fontBlue=new JButton(蓝色), b_music_on = new JButton(音乐ON/OFF), b_music_n = new JButton(上首), b_music_p = new JButton(下首),b_bg=new JButton(背景); Stri

8、ng DiaryRoot=diaries; int music_on = 0, m_now=0; String musics= Alone.wav, Dreaming.wav, dying in the sun.wav, End Credits.wav, lolita.wav, Numb.wav, The Pary.wav, 小茉莉.wav; InputStream is=null; /构造方法,完成界面及树结点初始化 ,音乐文件列表初始化 Remember() Container con=getContentPane(); DefaultMutableTreeNode root=new De

9、faultMutableTreeNode(日记本); /设置以月份为节点的树,不考虑闰年的影响。 for(i=1;i=12;i+) monthi=new DefaultMutableTreeNode(+i+月); root.add(monthi); /设置不同月份的节点 for(i=1;i=12;i+) /处理有31天的月份 if(i=1|i=3|i=5|i=7|i=8|i=10|i=12) for(int j=1;j=31;j+) String s1=monthi.toString(); String s2=j+日.txt; File file=new File(DiaryRoot+s1+s

10、2); /如果这一天写了日记则相应节点后面添加一个“*”来标志 if(file.exists()=true) monthi.add(new DefaultMutableTreeNode(j+日*); else monthi.add(new DefaultMutableTreeNode(j+日); /处理有30天的月份 else if(i=4|i=6|i=9|i=11) for(int j=1;j=30;j+) String s1=monthi.toString(); String s2=j+日.txt; File file=new File(DiaryRoot+s1+s2); /如果这一天写了

11、日记则相应节点后面添加一个“*”来标志 if(file.exists()=true) monthi.add(new DefaultMutableTreeNode(j+日*); else monthi.add(new DefaultMutableTreeNode(j+日); /处理有28天的月份 else for(int j=1;j=28;j+) String s1=monthi.toString(); String s2=j+日.txt; File file=new File(DiaryRoot+s1+s2); /如果这一天写了日记则相应节点后面添加一个“*”来标志 if(file.exist

12、s()=true) monthi.add(new DefaultMutableTreeNode(j+日*); else monthi.add(new DefaultMutableTreeNode(j+日); /设置监听 b_save.addActionListener(this); b_del.addActionListener(this); b_music_on.addActionListener(this); b_music_n.addActionListener(this); b_music_p.addActionListener(this); b_fontRed.addActionLi

13、stener(this); b_fontCommen.addActionListener(this); b_fontBig.addActionListener(this); b_fontBlue.addActionListener(this); b_bg.addActionListener(this); /创建树及其面板 tree =new JTree(root); JPanel p=new JPanel(); /设置边界布局 p.setLayout(new BorderLayout(); JScrollPane scrollpane_1=new JScrollPane(text); /带滚动

14、条的面板放置到中间,可以占据最大空间位置 p.add(scrollpane_1,BorderLayout.CENTER); /设置面板,放置保存和删除按钮等按钮,面板放在上部 JPanel p_1=new JPanel(); p_1.add(b_save); p_1.add(b_del); p_1.add(b_fontCommen); p_1.add(b_fontBig); p_1.add(b_fontRed); p_1.add(b_fontBlue); p_1.add(b_music_on); p_1.add(b_music_n); p_1.add(b_music_p); p_1.add(b

15、_bg); /设置布局 p.add(p_1,BorderLayout.NORTH); JScrollPane scrollpane_2=new JScrollPane(tree); JSplitPane splitpane=new JSplitPane(JSplitPane.HORIZONTAL_SPLIT,true,scrollpane_2,p); tree.addTreeSelectionListener(this); con.add(splitpane); /设置窗体适配器,关闭功能 addWindowListener(new WindowAdapter() public void wi

16、ndowClosing(WindowEvent e) System.exit(0); ); setVisible(true); setBounds(100,150,500,600); /处理树节点事件 public void valueChanged(TreeSelectionEvent e) /清空文本区中的内容 text.setText( ); if(e.getSource()=tree) /定义被选中的节点 DefaultMutableTreeNode node= (DefaultMutableTreeNode)tree.getLastSelectedPathComponent(); /

17、如果是叶节点,则可以对文件进行操作 if(node.isLeaf() /日记以“-月-日.txt”的形式存储,所以要消除“*”号的影响 String str=node.toString(); str=str.substring(0,str.length()-1); for(int i=0;i0.5时做减法负责做加法, double op = Math.random(); double c = Math.random()*10; if(op0.5) / 使r,g,b三个标志RGB的变量减小一个随机的大小小在0-50之间的数 if(c4 & c7) b-=Math.random()*50; if(op=0.5) / 使r,g,b三个标志RGB的变量增加一个随机的大小小在0-50之间的数 if(c4 & c7) b-=Math.random()*50; text.setBackground(new Color(r,g,b); /删除文件 void del() /

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1