Java做一个备忘录

Java做一个备忘录,第1张

你是自己用,还是也给你的朋友们用,Java做桌面程序不拿手,还要安装一个jre才能运行,那个东西大约16MB,给别人做桌面程序,不建议使用Java。

VB、Delphi、VC++,这些都比Java合适,它们跟系统耦合度高,有丰富的类库可以用,GUI的组织结构相对简单很多,不像Java的awt和swing那么绕,而且他们都可以用控件绑定数据库, *** 作很方便,java里面要自己动手的

用Java做的话,建议采用access数据库,这个数据库是一个文件数据库,可以很方便地拿走,不需要像mysql、mssql、oracle那样安装很庞大的服务器,使用jdbc驱动来连接,你可以先去网上找一个access的jdbc驱动包,怎么连,怎么调用,网上都有详细介绍,如果找不到,就问我吧。记录每天的时间,这个要专门弄一张表,记下事件名,提醒的时间等等,然后java程序启动时,从这个事件表里读取当天的事件,有个执行定时任务的工具类(好像是java.util.Timer,很久没用了,你百度一下“java 定时 任务”就能找到了),负责到了时间给出提醒;也可以使用多线程来做,另外开辟一个线程,每秒扫一次,看看那个事件的时间到了,然后给出提醒,这样做CPU占用率会很高。提示,你可以搞成消息框d出,这样最简单,或者d出一个Frame,同时在后台播放一个声音。再搞个Frame负责编辑事件。这个不难搞,就是麻烦,不过新手嘛,勤快点好,我现在越来越懒,什么都搞不动了了。

首先建立一个备忘

class Memo{

String content

Date date//或者使用Calendar类型

}

1. 点“写新备忘”怎样进入 另一个界面?怎样来保存更新的备忘?

在程序内部维护一个ArrayList<Date>,用来存放所有的备忘。用另一个Frame作为写新备忘的界面,比如frame2,点击“写新备忘”的时候令frame2.setVisable(true)即可。写完之后将该备忘加入到ArrayList即可

2. 主界面中怎样显示最近的备忘,且显示的是将来的时间的备忘?

最近的备忘应该是指即将发生的那个备忘吧。遍历ArrayList,找到将来最先发生的备忘,在文本框里将其显示出来即可,当然这件事情应该自动完成,这就需要一个线程不停地扫描ArrayList,并进行更新。一个简单的做法是添加一个“刷新”按钮,每次点击“刷新”的时候,才去检查ArrayList

3. 点查看备忘 怎样进入查看界面?

d出另一个窗口,显示ArrayList里的所有内容

4. 能不能使备忘录自己提醒呢?怎么提醒呢?

发出一声“嘟嘟”声来提醒,java.awt.Toolkit.getDefaultToolkit().beep()。

看来还是需要一个自动刷新功能,就如同上面所说的,在一个单独的线程里不停地检查有哪些事情要发生,并显示到主界面。

1.确定数格式,编写记录类

Record{

//记录编号

private int id

//提醒时间

private Time t

//提醒信息

private String info

}

2.确定数据访问方式,可以通过文件也可以通过数据库。

写一个数据访问类,例如用文件的形式

DataAccesser{

private static syncronized File file

//构造函数,进行file初始化

public static DataAccesser(){

}

//写入记录

public static void write(Record){

}

//根据时间读取记录

public static Record read(int id){

}

//根据时间读取记录集

public static List<Record>readSet(Time t){

}

}

3.定义存取信息队列的类

class MessageQueue{

//保存当前时刻以后的所有信息的时间队列,安顺序

private syncronized static List<Time>

//插入队列

public static void put(){

//需要按时间顺序插入

}

//获得当前时间前的时间集

public static List<Time>get(){

//获得后需要将得到的时间从列表中删除

}

}

4.编写提醒类,用于提醒

class Reminder{

public void run(){

List<Time>tl=getCurrentTime()

//查询出所有

需要提醒的记录调用remind()方法进行提醒

}

//提醒

protected void remind(Record r){

//这里写如何提醒

}

//获得当前时间

protected Time getCurrentTime(){

}

}

5.定时器类,

//提醒的主运行类

class Main{

static Thread thread

public Main(){

thread=new Thread(){

public void run(){

while(true){

new Reminder().run()

try{

Thread.sleep(60000)

}catch(Exception e ){}

}

}

}

public static void start(){

thread.start()

}

public sattic void stop(){

thread.stop()

}

}

}

只是个框架,具体代码自己完成吧,可以查询相关的API。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11593307.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-17
下一篇 2023-05-17

发表评论

登录后才能评论

评论列表(0条)

保存