下面利用Java来给大家演示一下如何实现简单的记事本功能,希望对Java初学者有所帮助。由于代码量大,仅列出部分思路代码。如需项目源代码可在下方评论出留言小编会把源代码私信给你。
前期准备工作(包括相关工具或所使用的原料等)myeclipseJava运行环境 详细的操作方法或具体步骤
下载JDK,并安装成功,CMD测试Java环境安装成功。出现如下提示则Java环境安装成功

打开mycelipse进入主界面,点击左上角file--new---java project,新建一个Java项目,项目名字任意取,这里我取名为note--然后点击完成,创建Java项目


然后右键项目下的src--new---package,新建一个包,包名我定为notetest,然后点击完成


然后右键我们建立好的包notetest--new--class,包名为Note,点击完成

首先我们想导入工程所需要的包,以便编写程序时进行调用
package notepad;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;

首先定义好编写程序时变量,我们设为成员变量方便以后调用
public class Notepad{
//屏幕分辨率
int width=Toolkit.getDefaultToolkit().getScreenSize().width;
int height=Toolkit.getDefaultToolkit().getScreenSize().height;
//窗体
private Frame frm ;
//显示内容多行文本
private TextArea notetext;
//记事本菜单
private MenuBar mb;
//菜单
private Menu m ;
//菜单项
private MenuItem open,save;

为程序创建组件--Frame--菜单栏目--文本框TextArea
public Notepad(){init();}
private void init(){
frm=new Frame("模拟记事本");
//设置菜单
mb=new MenuBar();
m=new Menu("文件");
//显示文件的地方
notetext=new TextArea();
notetext.setBounds(30, 50, 750, 500);
frm.add(notetext);
myEvent();

为控件和按钮添加监听事件
private void myEvent() {
//打开菜单的事件处理
open.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
//判断路径和文件名是否为空 如果为空结束程序
if(dir==null || name==null)
//如果不为空讲路径名和文件名封装到File对象里
file=new File(dir,name);
//使用字符缓冲读取文件
BufferedReader bfr=null;
try {
bfr=new BufferedReader(new FileReader(file));
});
save.addActionListener(new ActionListener(){
//获取路径和文件名
String dir=fd.getDirectory();
String name=fd.getFile();
//如果不为空讲路径名和文件名封装到File对象里
file=new File(dir,name);
}
BufferedWriter bfr=null;
}
});
}
}

然后创建主方法,开始测试程序,新建一个NoteDemo类
package notepad;
public class NoteDemo {
public static void main(String[] args) {
new Notepad();
}
}

程序运行结果如下

注意事项本程序不限IDE可使用其它Java编程软件编写经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。作者声明:本教程系本人依照真实经历原创,未经许可,谢绝转载。
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
