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

加入VIP,免费下载
 

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

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

下载须知

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

版权提示 | 免责声明

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

JAVA课程设计写字留痕.docx

1、JAVA课程设计写字留痕山东工商学院JAVA程序设计课程设计报告报告题目: JAVA写字留痕 所在院系: 计算机科学与技术学院 所在班级: 网络工程 姓 名: * 一设计思路 1. 作为日记本,为了保密性,设计了登陆界面,只有知道密码才能登陆到主界面,在主界面文本区,右键单击菜单可以进行密码的修改。如上图。2. 主界面用了两个Jpanel。左边的图片,日历等为一个JPanel;右边的文本框,JButton等为另一个JPanel。两个JPanel都是用的GridLayout,主界面的JFram用的是FlowLayout。如上图。3. 当更换日期,关闭窗口,点击保存,都能把当前日期的日记保存到磁盘

2、上。4. 当更换年月后,要先选择日期才能在文本区进行输入,否则会提示选择日期。JLable的显示内容会变为“请选择日期”。如下图。二实现代码1. 登陆界面的代码,只有输入正确的密码才能登陆日记程序。public class PassValidate extends JFrame implements ActionListener JPasswordField passfield; JLabel label,title1,title2,title3,title4; JButton yes,cancle; PassValidate() super(登录); setDefaultCloseOpera

3、tion(3); Toolkit tool=(); Image im=(); (im); 文本区JPanel的实现代码。public class FileEditor extends JPanel implements ActionListener JPanel buttonPanel; static JLabel title; JTextAreaWithMenu t; JButton save,delete,inport,outport; boolean dateexistence=true; int year; int mouth; int day; Hashtable data = ne

4、w Hashtable(); File file=new File(data); ObjectOutputStream hashOut; ObjectInputStream hashIn; String journalpass; rim().equals() (year)+(mouth)+(day); if(!().trim().equals() try (year)+(mouth)+(day),(); (data); (); indatasave); 主界面,把两个JPanel组成一个日记程序的主界面。public class JournalTest extends JFrame imple

5、ments WindowListener FileEditor fe; JournalTest() super(写字留痕); setDefaultCloseOperation(3); (this); Toolkit tool=(); Image im=(); (im); 日历,图片,Spinner的JPanel。public class YearMouth extends JPanel implements ChangeListener, MouseListener private int year; private int mouth; private int day; private JL

6、abel y1; private JLabel m1; private JLabel pic; JSpinner showyear; JSpinner showmouth; SpinnerNumberModel yearmodel,mouthmodel; JPanel spinner; JPanel arrnum; JTextField showDay; FileEditor fe; YearMouth(FileEditor fe) =fe; (new BorderLayout(5,5); ymInit(); etFont(new Font(TimesRomn,16); (titlei); a

7、rrangeNum(year,mouth,day); void arrangeNum(int year,int mouth,int day) int days=(year, mouth); Calendar c=(); days:+days); etText(+n); showDayi.setBackground(new Color(238,238,238); if(year, mouth, n)&day!=n) showDayi.setForeground; showDayi.setFont(new Font(TimesRomn,20); etFont(new Font(TimesRomn,

8、20); showDayi.setBackground; showDayi.setForeground; etForeground; ddMouseListener(this); for(int i=0;i42;i+) if(i=first+days) showDayi.setBackground(new Color(238,238,238); showDayi.setText(); etEditable(false); showDayi.setColumns(2); etFont(new Font(TimesRomn,16); etHorizontalAlignment; etForegro

9、und; showDayfirst+day-1.setBackground(new Color(238,238,238); showDayfirst+day-1.setFont(new Font(TimesRomn,20); etBackground(new Color(238,238,238); showDayfirst+day-1.setForeground; showDayfirst+day-1.setFont(new Font(TimesRomn,16); 弹出式菜单,右键单击可以更改文本的字体,登陆密码。public class FontPopup extends JPopupMen

10、u implements ActionListener String item; Font font; JMenuItem mt; JTextArea t; FontPopup(JTextArea t) =t; (new BevelBorder); item=new String标准仿宋,粗放行楷,规矩新魏,精致宋体,灵感隶书; font=new Font new Font(仿宋,0,18), new Font(华文行楷,0,30), new Font(华文新魏,0,22), new Font(宋体,0,14), new Font(隶书,0,20), ; for(int i=0;i;i+) m

11、t=new JMenuItem(itemi); (new Font(仿宋,0,14); (mt); (this); mt=new JMenuItem(修改密码); (new Font(仿宋,0,14); (mt); (this); Override public void actionPerformed(ActionEvent e) DateTime 类的实现,为程序提供系统日期处理方法。ublic class DateTime static Calendar cc=(); static int getYear() return ; static int getMouth() return +

12、1; static int getDay() return ; static int getMonDay(int year,int mouth) int days; switch(mouth) case 1: case 3: case 5: case 7: case 8: case 10: case 12:days=31;break; case 2: if(year%4=0&year%100!=0)|year%400=0) days=29; break; else days=28; break; default :days=30; return days; static boolean isW

13、enkend (int year,int mouth,int day) boolean value=false; Calendar c=(); (year,mouth-1,day); int first=; if(first=6|first=7) value=true; return value;8. 打开文件时的过滤,只显示txt文件。ublic class TxtFilter extends FileFilter Override public boolean accept(File f) oLowerCase().trim(); if(.txt)return true; return f

14、alse; Override public String getDescription() 导出日记文件的时候,输入密码为明文。如下图。2. spinner中的文本框,当输入非法内容的时候没有进行提示。如下图。3. 因为改变主界面窗口的大小不会是的各个组件的大小等比例的变大变小,所以把主界面设置为不可改变大小。如下图。4.未能实现自动创建磁盘日记保存文件。当文件缺失时,程序无法运行,并给出提示,如下图。5. 没有对密码文件进行加密,有记事本打开文件就可以看到明文的密码。 四 心得与收获通过这次的课程设计,不仅让自己使自己学的到课本知识得到了充分的运用,还极大的丰富了课本外的知识。通过上网,以及API 的查询来实现自己对程序的想法。如上述,程序实现的过程中还是有很多的不足需要改进。程序设计时并没有领悟java的面相对象的编程思想,所以在编写过程中程序显得很混乱,需要很多的改进。

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

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