当前位置: 移动技术网 > IT编程>开发语言>Java > Java实现超级实用的日记本

Java实现超级实用的日记本

2019年07月22日  | 移动技术网IT编程  | 我要评论

演示图

演示图

calendarapp.java

package calenda;
 
import java.awt.borderlayout;
import java.awt.color;
import java.awt.flowlayout;
import java.awt.font;
import java.awt.gridlayout;
import java.awt.event.actionevent;
import java.awt.event.actionlistener;
import java.awt.event.mouseevent;
import java.awt.event.mouselistener;
import java.io.file;
import java.text.simpledateformat;
import java.util.calendar;
import java.util.date;
import java.util.gregoriancalendar;
import java.util.locale;
 
import javax.swing.japplet;
import javax.swing.jbutton;
import javax.swing.jcombobox;
import javax.swing.jframe;
import javax.swing.jlabel;
import javax.swing.jpanel;
import javax.swing.swingutilities;
import javax.swing.border.titledborder;
 
public class calendarapp extends jframe{
   
  private calendarpanel calendarpanel=new calendarpanel();
  private static jlabel jlbllearn=new jlabel("开始准备记单词");
  private string versionid="欢迎使用版本1.0.20150427";
  private jlabel jlblversionid=new jlabel(versionid);
  private jbutton jbtprior=new jbutton("←");
  private jbutton jbtnext=new jbutton("→");
  private jbutton jbtdiary=new jbutton("写日记");
  private jbutton jbtscandiary=new jbutton("看日记");
  private static int year;
  public void init()
  {
    year=calendarpanel.getyear();
    calendarpanel.setbackground(color.white);
    /**
     * 添加功能性按钮到日历面板下方
     */
    jpanel jpbuttons=new jpanel(new flowlayout());
    //设置按钮背景色为白色
    jbtprior.setbackground(color.white);
    jbtnext.setbackground(color.white);
    jbtdiary.setbackground(color.white);
    jbtscandiary.setbackground(color.white);
    /*
     * 给四个按钮添加鼠标事件,使其更加炫酷
     */
    //一、后退按钮
    jbtprior.addmouselistener(new mouselistener(){
 
      @override
      public void mouseclicked(mouseevent arg0) {
        // todo auto-generated method stub
         
      }
 
      @override
      public void mouseentered(mouseevent arg0) {
        // todo auto-generated method stub
        jbtprior.setforeground(color.green);
      }
 
      @override
      public void mouseexited(mouseevent arg0) {
        // todo auto-generated method stub
        jbtprior.setforeground(color.black);
      }
 
      @override
      public void mousepressed(mouseevent arg0) {
        // todo auto-generated method stub
         
      }
 
      @override
      public void mousereleased(mouseevent arg0) {
        // todo auto-generated method stub
         
      }
       
    });
    //二、前进按钮
        jbtnext.addmouselistener(new mouselistener(){
 
          @override
          public void mouseclicked(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
 
          @override
          public void mouseentered(mouseevent arg0) {
            // todo auto-generated method stub
            jbtnext.setforeground(color.green);
          }
 
          @override
          public void mouseexited(mouseevent arg0) {
            // todo auto-generated method stub
            jbtnext.setforeground(color.black);
          }
 
          @override
          public void mousepressed(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
 
          @override
          public void mousereleased(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
           
        });
        //三、写日记按钮
        jbtdiary.addmouselistener(new mouselistener(){
 
          @override
          public void mouseclicked(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
 
          @override
          public void mouseentered(mouseevent arg0) {
            // todo auto-generated method stub
            jbtdiary.setforeground(color.green);
          }
 
          @override
          public void mouseexited(mouseevent arg0) {
            // todo auto-generated method stub
            jbtdiary.setforeground(color.black);
          }
 
          @override
          public void mousepressed(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
 
          @override
          public void mousereleased(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
           
        });
        //四、看日记按钮
        jbtscandiary.addmouselistener(new mouselistener(){
 
          @override
          public void mouseclicked(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
 
          @override
          public void mouseentered(mouseevent arg0) {
            // todo auto-generated method stub
            jbtscandiary.setforeground(color.green);
          }
 
          @override
          public void mouseexited(mouseevent arg0) {
            // todo auto-generated method stub
            jbtscandiary.setforeground(color.black);
          }
 
          @override
          public void mousepressed(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
 
          @override
          public void mousereleased(mouseevent arg0) {
            // todo auto-generated method stub
             
          }
           
        });
    jpbuttons.add(jbtprior);
    jpbuttons.add(jbtnext);
    jpbuttons.add(jbtdiary);
    jpbuttons.add(jbtscandiary);
    jpbuttons.setbackground(color.white);
    /**
     * 添加日历主要组件
     */
    jpanel jpcalendar=new jpanel(new borderlayout());
    jpcalendar.add(calendarpanel,borderlayout.center);
    jpcalendar.add(jpbuttons,borderlayout.south);
     
    /**
     * 添加背单词模块
     */
    jpanel jplearn=new jpanel(new flowlayout());
    jplearn.setborder(new titledborder("开心背单词"));
    jplearn.add(jlbllearn);
    jplearn.setbackground(color.white);
    /**
     * 添加版本号信息
     */
    jpanel jpversionid=new jpanel(new flowlayout());
    font font=new font("宋体",font.plain,4);
    jpversionid.setfont(font);
    jpversionid.add(jlblversionid);
    jpversionid.setbackground(color.white);
    /**
     * 容器面板,合并记单词与版本号模块
     */
    jpanel jpbelow=new jpanel(new borderlayout(2,1));
    jpbelow.add(jplearn,borderlayout.center);
    jpbelow.add(jpversionid,borderlayout.south);
     
    this.add(jpcalendar,borderlayout.center);
    this.add(jpbelow,borderlayout.south);
    this.setbackground(color.white);
    this.setsize(700, 500);
    this.setlocationrelativeto(null);
    this.settitle("多功能日历");
    this.setdefaultcloseoperation(exit_on_close);
    this.setvisible(true);
     
    jbtscandiary.addactionlistener(new actionlistener()
    {
      @override
      public void actionperformed(actionevent e) {
          new thread(new thread_scandiary()).start();
      }
    });
    jbtdiary.addactionlistener(new actionlistener()
    {
 
      @override
      public void actionperformed(actionevent e) {
        //获取本地系统时间
        simpledateformat df = new simpledateformat("yyyy-mm-dd-hh-mm-ss");//设置日期格式
        string time=df.format(new date());
        new thread(new thread_keepdiary(time)).start();
      }
    });
     
     
     
    jbtprior.addactionlistener(new actionlistener()
    {
      @override
      public void actionperformed(actionevent e) {
        // todo auto-generated method stub
        int currentmonth=calendarpanel.getmonth();
        if(currentmonth==0)
        {
          calendarpanel.setyear(year);
          year--;
        }
        calendarpanel.setmonth((currentmonth-1)%12);
      }
    });
     
    jbtnext.addactionlistener(new actionlistener()
    {
 
      @override
      public void actionperformed(actionevent e) {
        // todo auto-generated method stub
        int currentmonth=calendarpanel.getmonth();
        if(currentmonth==11)
        {
          calendarpanel.setyear(++year);
        }
        calendarpanel.setmonth((currentmonth+1)%12);
      }
    });
  }
   
 
  public static void main(string[] args) throws interruptedexception {
    // todo auto-generated method stub
    swingutilities.invokelater(new runnable(){
      @override
      public void run() {
        // todo auto-generated method stub
        new calendarapp().init();
        new thread(new thread_showenglish(jlbllearn)).start();
      }
    });
  }
   
 
}

calendarpanel.java

/**
 * 本程序功能是进行日历主面板布局
 */
package calenda;
 
import java.awt.borderlayout;
import java.awt.color;
import java.awt.font;
import java.awt.gridlayout;
import java.awt.event.mouseevent;
import java.awt.event.mouselistener;
import java.text.dateformatsymbols;
import java.text.simpledateformat;
import java.util.calendar;
import java.util.gregoriancalendar;
import java.util.locale;
 
import javax.swing.*;
import javax.swing.border.lineborder;
 
public class calendarpanel extends jpanel {
  /**
   * 声明数据变量
   */
  private static final long serialversionuid = 1l;
  private jlabel jlblheader=new jlabel(" ",jlabel.center);
  private jlabel[] jlblday=new jlabel[49];
  private calendar calendar=new gregoriancalendar();
  private int year0=calendar.get(calendar.year);
  private int month0=calendar.get(calendar.month);
  private int day0=calendar.get(calendar.day_of_month);
  private int month;
  private int year;
  private int day;
  private jpanel jpdays=new jpanel(new gridlayout(0,7));
  font font1=new font("宋体",font.italic,20);
  font font2=new font("宋体",font.bold,26);
  font font3=new font("宋体",font.bold,30);
  public calendarpanel()
  {
    //设置日历头部件以及日期标签的背景色为白色
    jlblheader.setbackground(color.white);
    jpdays.setbackground(color.white);
    //声明每个标签
    for(int i=0;i<49;i++)
    {
      jlblday[i]=new jlabel();
      jlblday[i].setborder(new lineborder(color.light_gray,1));
      jlblday[i].sethorizontalalignment(jlabel.right);
      jlblday[i].setverticalalignment(jlabel.top);
    }
    calendar=new gregoriancalendar();
    month=calendar.get(calendar.month);
    year=calendar.get(calendar.year);
    day=calendar.get(calendar.date);
    //更新日历
    updatecalendar();
    showheader();
    showdays();
    //添加到主面板
    this.setlayout(new borderlayout());
    this.add(jlblheader, borderlayout.north);
    this.add(jpdays, borderlayout.center);
  }
  private void showheader()
  {
    simpledateformat sdf=new simpledateformat("mmmm yyyy",locale.china);
    string header=sdf.format(calendar.gettime());
    jlblheader.settext(header);
    jlblheader.setforeground(color.blue);
    jlblheader.setfont(font3);
  }
  private void showdaynames()
  {
    dateformatsymbols dfs=new dateformatsymbols(locale.china);
    string daynames[]=dfs.getweekdays();
    for(int i=0;i<7;i++)
    {
      jlblday[i].settext(daynames[i+1]);
      jlblday[i].setforeground(color.blue);
      jlblday[i].sethorizontalalignment(jlabel.center);
      jlblday[i].setfont(font2);
      jpdays.add(jlblday[i]);
    }
  }
  public void showdays()
  {
    jpdays.removeall();
    showdaynames();
    int startingdayofmonth=calendar.get(calendar.day_of_week);
    calendar clonecalendar=(calendar)calendar.clone();
    clonecalendar.add(calendar.date, -1);
    int daysinprecedingmonth=clonecalendar.getactualmaximum(calendar.day_of_month);
    for(int i=0;i<startingdayofmonth-1;i++)
    {
      jlblday[i+7].setforeground(color.light_gray);
      jlblday[i+7].sethorizontalalignment(jlabel.center);
      jlblday[i+7].settext(daysinprecedingmonth-startingdayofmonth+2+i+"");
      jlblday[i+7].setfont(font1);
      jpdays.add(jlblday[i+7]);
    }
    int daysincurrentmonth=calendar.getactualmaximum(calendar.day_of_month);
    for(int i=1;i<=daysincurrentmonth;i++)
    {
      if(i==day0&&year==year0&&month==month0)
      {
        jlblday[i-2+startingdayofmonth+7].setforeground(color.red);
        jlblday[i-2+startingdayofmonth+7].sethorizontalalignment(jlabel.center);
        jlblday[i-2+startingdayofmonth+7].settext(i+"");
        jlblday[i-2+startingdayofmonth+7].setfont(font2);
        jpdays.add(jlblday[i-2+startingdayofmonth+7]);
      }
      else
      {
        jlblday[i-2+startingdayofmonth+7].setforeground(color.darkgray);
        jlblday[i-2+startingdayofmonth+7].sethorizontalalignment(jlabel.center);
        jlblday[i-2+startingdayofmonth+7].settext(i+"");
        jlblday[i-2+startingdayofmonth+7].setfont(font1);
        jpdays.add(jlblday[i-2+startingdayofmonth+7]);
      }
    }
    int j=1;
    for(int i=daysincurrentmonth-1+startingdayofmonth+7;i%7!=0;i++)
    {
      jlblday[i].setforeground(color.light_gray);
      jlblday[i].sethorizontalalignment(jlabel.center);
      jlblday[i].settext(j++ +"");
      jlblday[i].setfont(font1);
      jpdays.add(jlblday[i]);
    }
    jpdays.repaint();
  }
  public void updatecalendar()
  {
    calendar.set(calendar.year, year);
    calendar.set(calendar.month, month);
    calendar.set(calendar.date, 1);
    month=calendar.get(calendar.month);
    year=calendar.get(calendar.year);
    day=calendar.get(calendar.date);
  }
  public int getmonth()
  {
    return month;
  }
  public int getyear()
  {
    return year;
  }
  public void setmonth(int month)
  {
    this.month=month;
    updatecalendar();
    showheader();
    showdays();
  }
  public void setyear(int year)
  {
    this.year=year;
    updatecalendar();
    showheader();
    showdays();
  }
}

diary.java

/**
 * 本程序为日记类
 * 最后修改日期为2015-4-27
 */
package calenda;
 
import java.io.file;
import java.io.fileinputstream;
import java.io.fileoutputstream;
import java.io.objectinputstream;
import java.io.objectoutputstream;
import java.io.serializable;
 
import javax.swing.joptionpane;
 
public class diary implements serializable {
 
  /**
   * 数据域
   */
  //私有变量
  private string filename;
  private string theme;
  private string content;
  //含参构造方法
  public diary(string filename,string theme,string content)
  {
    if(theme.length()==0)
    {
      joptionpane.showmessagedialog(null, "无论心情如何,总得有个主题吧!");
    }
    else if(content.length()==0)
    {
      joptionpane.showmessagedialog(null, "把开心的不开心的都尽情写下吧!");
    }
    else
    {
      file calendardiaryfile=new file("c:/calendar/diary");
      if(!calendardiaryfile.exists())
      {
        calendardiaryfile.mkdirs();
      }
    this.filename="c:/calendar/diary/"+filename+".dat";
    this.theme=theme;
    this.content=content;
    }
  }
  public void write() throws exception
  {
    file file=new file(filename);
    fileoutputstream fos = new fileoutputstream(file);
    objectoutputstream oos = new objectoutputstream(fos);
    oos.writeobject(this);
    oos.close();
  }
  public diary read() throws exception
  {
    file file=new file(filename);
    fileinputstream fis=new fileinputstream(file);
    objectinputstream ois = new objectinputstream(fis);
    diary d=(diary) ois.readobject();
    ois.close();
    return d;
  }
  /**
   * 变量get()方法
   * @return
   */
  public string gettheme()
  {
    return this.theme;
  }
  public string getcontent()
  {
    return this.content;
  }
  /**
   * 变量set()方法
   * @param comment
   */
}

thread_keepdiary.java

/**
 * 备忘录线程
 * 用于单击标签时可以存储日记
 * 目前只考虑年月日时间点,不标记具体时间点
 */
package calenda;
 
import java.awt.borderlayout;
import java.awt.event.actionevent;
import java.awt.event.actionlistener;
import java.io.file;
import java.nio.file.files;
 
import javax.swing.*;
 
public class thread_keepdiary extends jframe implements runnable {
 
  private jframe jf=this;
  private jtextarea jta=new jtextarea();
  private jbutton jbtsave=new jbutton("保存");
  private jlabel jlbltitle=new jlabel("主题");
  private jtextfield jtftitle=new jtextfield(16);
  private string id;
  public thread_keepdiary(string time)
  {
     
    jpanel jptitle=new jpanel();
    jptitle.setlayout(new borderlayout());
    jptitle.add(jlbltitle, borderlayout.west);
    jptitle.add(jtftitle,borderlayout.center);
    jta.setlinewrap(true);
    jta.setwrapstyleword(true);
    jscrollpane jsp=new jscrollpane(jta);
    jsp.sethorizontalscrollbarpolicy(jscrollpane.horizontal_scrollbar_never);
    this.id=time;
    jbtsave.addactionlistener(new actionlistener()
    {
      @override
      public void actionperformed(actionevent arg0) {
        // todo auto-generated method stub
         
        string theme=jtftitle.gettext().trim();
        string content=jta.gettext();
         
        diary d_today=new diary(id,theme,content);
        try
        {
          d_today.write();
          joptionpane.showmessagedialog(null, "保存成功!");
          jf.dispose();
        }
        catch(exception e)
        {
          e.printstacktrace();
        }
      }
    });
    this.settitle("备忘录"+id);
    this.add(jsp,borderlayout.center);
    this.add(jptitle, borderlayout.north);
    this.add(jbtsave, borderlayout.south);
    this.setsize(500,500);
    this.setlocationrelativeto(null);
    this.setdefaultcloseoperation(dispose_on_close);
     
  }
  @override
  public void run() {
    this.setvisible(true);
  }
 
}

thread_mottosparkle.java

package calenda;
 
import javax.swing.jlabel;
 
public class thread_mottosparkle implements runnable{
  private jlabel jlbl;
  public thread_mottosparkle(jlabel jlbl)
  {
    this.jlbl=jlbl;
  }
  @override
  public void run() {
    string content=jlbl.gettext();
    int l=content.length();
    int index=0;
    while(true)
    {
      jlbl.settext(content.substring(0, index));
      try
      {
        thread.sleep(250);
      }
      catch(exception ex)
      {
        ex.printstacktrace();
      }
      index++;
      if(index==(l+1))
        index=0;
    }
  }
 
}

thread_scandiary.java

/**
* 查看日记线程编写
*/
package calenda;
 
import java.awt.borderlayout;
import java.awt.color;
import java.awt.font;
import java.awt.event.actionevent;
import java.awt.event.actionlistener;
import java.io.file;
import java.io.fileinputstream;
import java.io.objectinputstream;
 
import javax.swing.*;
import javax.swing.table.defaulttablecellrenderer;
import javax.swing.table.defaulttablemodel;
import javax.swing.table.jtableheader;
 
public class thread_scandiary extends jframe implements runnable{
  /**
   * 声明变量区
   */
  private static final long serialversionuid = 1l;
  //日历数据库存放路径
  private string path="c:/calendar/diary";
  //日历总个数
  private static int num;
  //声明日历文件
  private file file;
  private file[] diary;
  //声明jtable模型
  private jtable jtable;
  //声明格言面板及标签及内容等
  private jpanel jpmotto=new jpanel();
  private jlabel jlblmotto=new jlabel();
  private font font=new font("宋体",font.italic,20);
  private string wish="唯有专注,才能让自己成功。";
  //增加弹出式菜单2015-4-26
  private jpopupmenu jpopupmenu1=new jpopupmenu();
  //声明菜单
  private jmenuitem jmiscan=new jmenuitem("查看");
  private jmenuitem jmidelete=new jmenuitem("删除");
  private jmenuitem jmicomment=new jmenuitem("评论");
  @override
  public void run() {
    //尝试弹出式菜单增加子菜单
    jmiscan.setforeground(color.red);
    jmidelete.setforeground(color.red);
    jmicomment.setforeground(color.red);
    jpopupmenu1.add(jmiscan);
    jpopupmenu1.addseparator();
    jpopupmenu1.add(jmidelete);
    jpopupmenu1.addseparator();
    jpopupmenu1.add(jmicomment);
    /**
     * 智能获取文件列表
     */
    file = new file(path);
    diary=file.listfiles();
    num=diary.length;
    string[] head={"  时间  ","   主题   "};
    object[][] diary=new object[num][2];
    for(int i=0;i<num;i++)
    {
        try{
           string time=diary[i].getname().replacefirst(".dat",  "");
           fileinputstream fis=new fileinputstream(diary[i]);
           objectinputstream ois = new objectinputstream(fis);
           diary d=(diary) ois.readobject();
           ois.close();
           string theme=d.gettheme();
           diary[i][0]=time;
           diary[i][1]=theme;
        }
        catch(exception ex)
        {
          ex.printstacktrace();
        }
    }
    /**
     * 格言面板取
     */
    jlblmotto.settext(wish);
    jlblmotto.setfont(font);
    jlblmotto.setforeground(color.red);
    jpmotto.add(jlblmotto);
    jpmotto.setbackground(color.white);
    /**
     * 日历列表面板区
     */
    final defaulttablemodel tablemodel=new defaulttablemodel(diary,head);
    jtable=new jtable(tablemodel);
    jtable.setbackground(color.white);
    jtable.setrowheight(30);
    jtable.setdoublebuffered(false);
    jtable.setcomponentpopupmenu(jpopupmenu1);
    jtable.setselectionmode(listselectionmodel.single_selection);
    defaulttablecellrenderer tcr = new defaulttablecellrenderer();// 设置table内容居中
    tcr.sethorizontalalignment(swingconstants.center);// 这句和上句作用一样
    jtable.setdefaultrenderer(object.class, tcr);
    jscrollpane jsp=new jscrollpane(jtable);
     
    /**
     * 弹出式菜单事件监听器编写
     */
    //查看菜单
    jmiscan.addactionlistener(new actionlistener(){
      @override
      public void actionperformed(actionevent e) {
        if(jtable.getselectedrow()>=0)
        {
          int index=jtable.getselectedrow();
          string filename="c:/calendar/diary/"+diary[index].getname();
          file file=new file(filename);
          try
          {
            fileinputstream fis=new fileinputstream(file);
            objectinputstream ois = new objectinputstream(fis);
            diary d=(diary) ois.readobject();
            ois.close();
            jframe jf=new jframe();
            jtextarea jta=new jtextarea();
            jlabel jlbltitle=new jlabel("主题");
            jtextfield jtftitle=new jtextfield(16);
            jpanel jptitle=new jpanel();
            jptitle.setlayout(new borderlayout());
            jptitle.add(jlbltitle, borderlayout.west);
            jptitle.add(jtftitle,borderlayout.center);
            jta.setlinewrap(true);
            jta.setwrapstyleword(true);
            jscrollpane jsp=new jscrollpane(jta);
            jsp.sethorizontalscrollbarpolicy(jscrollpane.horizontal_scrollbar_never);
            jtftitle.settext(d.gettheme());
            jta.settext(d.getcontent());
            jtftitle.seteditable(false);
            jta.seteditable(false);
            jf.settitle("日记 "+diary[index].getname().replacefirst(".dat",  ""));
            jf.add(jsp,borderlayout.center);
            jf.add(jptitle, borderlayout.north);
            jf.setsize(400,400);
            jf.setlocationrelativeto(null);
            jf.setdefaultcloseoperation(dispose_on_close);
            jf.setvisible(true);
          }
          catch(exception ex)
          {
            ex.printstacktrace();
          }
        }
        else
        {
          joptionpane.showmessagedialog(null, "请先选中一个日记!");
        }
      }
    });
    //删除菜单
    jmidelete.addactionlistener(new actionlistener(){
      @override
      public void actionperformed(actionevent e) {
        if(jtable.getselectedrow()>=0)
        {
          int index=jtable.getselectedrow();
          string filename="c:/calendar/diary/"+diary[index].getname();
          file file=new file(filename);
          int option=joptionpane.showconfirmdialog(null, "你确定要删除日记"+diary[index].getname()+"?"); 
           if(option==joptionpane.yes_option)
           {
             file.delete();
             tablemodel.removerow(index);
            swingutilities.updatecomponenttreeui(jtable);
            joptionpane.showmessagedialog(null, "删除成功!");
           }
           else
           {
           }
        }
        else
        {
          joptionpane.showmessagedialog(null, "请先选中一个日记!");
        }
      }
       
    });
    /**
     * 主框架布局
     */
    this.add(jsp,borderlayout.center);
    this.add(jpmotto, borderlayout.south);
    this.setsize(600, 500);
    this.setdefaultcloseoperation(dispose_on_close);
    this.setlocationrelativeto(null);
    this.settitle("日记列表");
    this.setvisible(true);
    new thread(new thread_mottosparkle(jlblmotto)).start();
  }
}

thread_showenglish.java

package calenda;
 
import java.awt.color;
import java.awt.font;
import java.io.bufferedreader;
import java.io.filereader;
import java.io.linenumberreader;
import java.security.securerandom;
import java.util.random;
 
import javax.swing.jlabel;
 
public class thread_showenglish implements runnable {
  private static jlabel jlbl=new jlabel();
  font font=new font("���ו",font.bold,18);
  public thread_showenglish(jlabel jlbl)
  {
    this.jlbl=jlbl;
    jlbl.setforeground(color.magenta);
    jlbl.setfont(font);
  }
  @override
  public void run() {
    // todo auto-generated method stub
    int count=0;
    try
    {
      string file="c:/calendar/learning/english_word.txt";
      bufferedreader input = new bufferedreader(new filereader(file));
      while(input.readline()!=null)
      {
        count++;
      }
      input.close();
      int[] word = new int[count];
      securerandom random = new securerandom();
      for(int i=0;i<count;i++)
      {
        word[i]=random.nextint(count);
      }
      int index=0;
      thread.sleep(1000);
      while(true)
      {
        bufferedreader input1 = new bufferedreader(new filereader(file));
        string content="";
        int line=0;
        while((content=input1.readline())!=null)
        {
          if(line==word[index])
          {
            jlbl.settext(content);
          }
          line++;
        }
        if(index==count-1)
          index=0;
        else
          index++;
        thread.sleep(3500);
      }
    }
    catch(exception ex)
    {
      ex.printstacktrace();
    }
  }
}

以上所述就是本文的全部内容了,希望大家能够喜欢。

如对本文有疑问, 点击进行留言回复!!

相关文章:

验证码:
移动技术网