Java实现的简易记事本
本文实例讲述了Java实现的简易记事本。分享给大家供大家参考。具体如下:
感觉这个没有自己以前用Windows API写的好看了。。。
JDK Version : 1.7.0
效果如下图所示:
源代码如下:
import java.io.*;
import java.awt.*;
import java.awt.event.*;
/**
* The Main Window
* @author Neo Smith
*/
class PadFrame extends Frame
{
private MenuBar mb;
private Menu menuFile;
private Menu menuEdit;
private MenuItem[] miFile;
private TextArea ta;
final private Frame frame = this;
/**
* The inner class
* Message Handle
*/
class EventExit implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
}
class SystemExit extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
}
class EventMenuClose implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
ta.setText(null);
}
}
class EventOpenFile implements ActionListener
{
public void actionPerformed(ActionEvent e)
{
//Create the OpenFile Dialog
FileDialog dlg = new FileDialog(frame,"Open Files",FileDialog.LOAD);
dlg.show();
String strPath;
if((strPath = dlg.getDirectory()) != null)
{
//get the full path of the selected file
strPath += dlg.getFile();
//open the file
try
{
FileInputStream fis = new FileInputStream(strPath);
BufferedInputStream bis = new BufferedInputStream(fis);
byte[] buf = new byte[3000];
int len = bis.read(buf);
ta.append(new String(buf,0,len));
bis.close();
}
catch(Exception ex)
{
ex.printStackTrace();
}
}
}
}
/**
* Construction Method
* Adding Menu and TextArea components
* @param strTitle
*/
public PadFrame(String strTitle)
{
super(strTitle);
this.setLocation(400,200);
this.setSize(900, 630);
//Create the Menu Bar
mb = new MenuBar();
menuFile = new Menu("File");
menuEdit = new Menu("Edit");
miFile = new MenuItem[]{new MenuItem("Open"),new MenuItem("Close"),new MenuItem("Exit")};
this.setMenuBar(mb);
mb.add(menuFile);
mb.add(menuEdit);
for(int i = 0 ; i < miFile.length ; ++i)
{
menuFile.add(miFile[i]);
}
//Add event handle
setMenuEventHandle(new EventExit(),"File",2);
setMenuEventHandle(new EventOpenFile(),"File",0);
setMenuEventHandle(new EventMenuClose(),"File",1);
this.addWindowListener(new SystemExit());
//add the TextArea component
ta = new TextArea(30,30);
this.add(ta);
}
public void setMenuEventHandle(ActionListener al,String strMenu,int index)
{
if(strMenu == "File")
{
miFile[index].addActionListener(al);
}
}
public int getMenuItemAmount(String strMenu)
{
if("File" == strMenu)
{
return miFile.length;
}
return -1;
}
public static void main(String[] args)
{
PadFrame f = new PadFrame("NotePad");
f.show();
}
}
希望本文所述对大家的java程序设计有所帮助。相关阅读:
Jquery遍历Json数据的方法
jQuery性能优化的38个建议
CSS重要属性之float学习心得(分享)
在WinForm中发送HTTP请求的实现方法
CentOS简介与RedHat Linux的区别介绍
Win7系统C盘里的ProgramData文件夹有什么作用
浅析Javascript匿名函数与自执行函数
jQuery提交多个表单的小技巧
Java实现直接插入排序和折半插入排序算法示例
Android仿微信发表说说实现拍照、多图上传功能
MySQL中对于not in和minus使用的优化
13问13答全面学习Android View绘制
windows和linux安装mysql后启用日志管理功能的方法
iframe子页面操作父页面并实现屏蔽页面弹出层效果