java课程设计报告_电子钟日历记事本(编辑修改稿)内容摘要:

catch(Exception ex){} ()。 } catch(IOException eee) { } if(address!=null) Java 语言与面向对象技术课程设计 13 { return address。 } else { return。 } } public void actionPerformed(ActionEvent e) { if(().equals(更 改图片背景 )) { FileDialog dia=new FileDialog(this,选定图片 ,)。 //新建一个文件选择对话框,用 dia 获得选择得到的信息; (true)。 //设置为模态对话框; (true)。 //将取得的内容存入 “”文件中,下次打开软件时还能记住上次的图片路径的选择; if((()!=null)amp。 amp。 (()!=null))//如果得到的路径和文件名不为空; { try { FileOutputStream inOne=new FileOutputStream()。 ObjectOutputStream inTwo=new ObjectOutputStream(inOne)。 (()+())。 ()。 } 日历记事本 14 catch(IOException ee) { } picturename=getPicture_address()。 //从文件中读出显示图片的路径地址; (new File(picturename))。 //将获得路径传给图片,显示该路径指定的图片 } } if(()==nextYear) { year++。 (+year)。 (year)。 (calendarMessage)。 ()。 (year,month,day)。 doMark()。 } else if (()==previousYear) { year。 (+year)。 (year)。 (calendarMessage)。 ()。 (year,month,day)。 doMark()。 } else if (()==nextMonth) { Java 语言与面向对象技术课程设计 15 month++。 if(month12) month=1。 (+month)。 (calendarMessage)。 ()。 (year,month,day)。 doMark()。 } else if (()==previousMonth) { month。 if(month1) month=12。 (+month)。 (calendarMessage)。 ()。 (year,month,day)。 doMark()。 } else if (()==showYear) { String s = ().trim()。 char a[] = ()。 boolean boo = false。 for(int i = 0。 i。 i++) { if(!((a[i]))) boo = true。 } if(boo==true) (this,你输入了非法年份 ,警告。 , 日历记事本 16 )。 else if(boo==false) year = (s)。 (+year)。 (year)。 (calendarMessage)。 ()。 (year,month,day)。 doMark()。 } else if (()== saveDailyRecord) { (dir,year,month,day)。 doMark()。 } else if(()==deleteDailyRecord) { (dir,year,month,day)。 doMark()。 } else if (()==readDailyRecord) { (dir,year,month,day)。 doMark()。 } } public void mousePressed(MouseEvent e) { JTextField text = (JTextField)()。 Java 语言与面向对象技术课程设计 17 String str = ().trim()。 try { day = (str)。 } catch (NumberFormatException exp) {} (day)。 (year,month,day)。 } public void mouseReleased(MouseEvent e){} public void mouseEntered(MouseEvent e){} public void mouseExited(MouseEvent e){} public void mouseClicked(MouseEvent e){} public void focusGained(FocusEvent e) { Component = (Component)()。 ()。 } public void focusLost(FocusEvent e) { Component = (Component)()。 (backColor)。 } public void doMark() { for(int i=0。 i。 i++) { showDay[i].removeAll()。 String str = showDay[i].getText().trim()。 日历记事本 18 try { int n = (str)。 if(isHaveDailyRecord(n)==true) { JLabel mess = new JLabel(yes)。 (new Font(TimesRoman,11))。 ()。 showDay[i].add(mess)。 } } catch (Exception exp){} } ()。 ()。 } public boolean isHaveDailyRecord(int n) { String key = +year++month++n。 String []dayFile = ()。 boolean boo = false。 for(int k = 0。 k。 k++) { if(dayFile[k].equals(key+.txt)) { boo = true。 break。 } } return boo。 Java 语言与面向对象技术课程设计 19 } public static void main(String args[]) { new CalendarWindow()。 } } 日期 模块设计 效果图 类的主要成员变量和方法 ( 1) 成员变量 year, month, day 是 int 型数据,它们的值分别确定年份、月份和日期。 ( 2) 方法 1) setYear( int)和 getYear()方法分别用来设置 year 和获取 year 的值。 2) setMonth( int)和 getMonth()方法分别用来设置 month 和获取 month 的值。 3) setDay( int)和 getDay()方法分别用来设置和获取 day 的值。 4) getMonthCalendar()方法是用来处理日期数据,使其按着习惯来显示。 即日历牌中每行的第一列为“星期天”。 getMonthCalendar()方法根据 year, month 和 day 的值返回 一个存放着“日历”数据的 String 类型的数组,例如,如果某月有 30 天,而且该月的第一天是星期三,那么返回的 String 类型的数组是:“”,“”,“”,“ 1”,“ 2”,,“ 30”。 日历记事本 20 主要程序代码 import。 public class CalendarMessage{ int year=1,month=1,day=1。 public void setYear(int year){ =year。 } public int getYear(){ return year。 } public void setMonth(int month){ if(month=12amp。 amp。 month=1) =month。 else =1。 } public int getMonth(){ return month。 } public void setDay(int day){ =day。 } public int getday() { return day。 } public String [] getMonthCalendar(){ String [] day=new String[42]。 Calendar rili=()。 Java 语言与面向对象技术课程设计 21 (year,month1,1)。 //将日历翻到 year 年 month 月 1 日 int 星期几 =()1。 int dayAmount=0。 if(month==1||month==3||month==5||month==7||month==8||month==10||month==12) dayAmount=31。 if(month==4||month==6||month==9||month==11) dayAmount=30。 if(month==2) if(((year%4==0)amp。 amp。 (year%100!=0))||year%400==0) dayAmount=29。 else dayAmount=28。 for(int i=0。 i星期几。 i++) day[i]=。 for(int i=星期几 ,n=1。 i星期几 +dayAmount。 i++){ day[i]=(n)。 n++。 } for (int i=星期几 +dayAmount。 i42。 i++ ) day[i]=。 return day。 } } 日历 模块设计 效果图 日历记事本 22 类的主要成员变量和方法 ( 1) 成员变量 1) year, month 和 day 是 int 型数据,它们的值分别确定年份、月份和日期 2) calendarMessage 是 CalendarMessage 对象,该对象可以处理和日期有关的数据。 3) showDay 数组的每个单元是 JtextField 类创建的用来显示日期的文本框。 4) “星期”是 String 数组,单元的值依次为“ SUN 日”、“ MON 一”、“ TUE 二”、“ WED 三”、“ THU 四”、“ FRI 五”、“ SAT 六”。 ( 2) 方法 1) CalendarPad()是构造方法,用来创建 calendarPad 对象。 2) setShowDayTextField(。
阅读剩余 0%
本站所有文章资讯、展示的图片素材等内容均为注册用户上传(部分报媒/平媒内容转载自网络合作媒体),仅供学习参考。 用户通过本站上传、发布的任何内容的知识产权归属用户或原始著作权人所有。如有侵犯您的版权,请联系我们反馈本站将在三个工作日内改正。