java记事本课程设计源代码1
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.event.*;
import java.io.*;
public class Notepad extends JFrame{
String openFilePath;
String openFileName;
String title="ERROR MESSAGE";
int type=JOptionPane.ERROR_MESSAGE;
public Notepad()
{
super("记事本");
final JTextArea text = new JTextArea();
text.setToolTipText("记记入内容");
//界面
//退出事件
this.addWindowListener(new WindowAdapter()
{
public void windowClosing(WindowEvent e)
{
System.exit(0);
}
});
//记记的布局
final JPanel panel=new JPanel();
panel.setLayout(new GridLayout(1,1));
panel.add(new JScrollPane(text));
this.getContentPane().add(panel);
//菜记记
JMenuBar Mbar = new JMenuBar();
this.setJMenuBar(Mbar);
JMenu file = new JMenu("文件");
JMenu edit = new JMenu("记记");
JMenu help = new JMenu("帮助");
Mbar.add(file);
Mbar.add(edit);
Mbar.add(help);
JMenuItem newFile = new JMenuItem("新建");
newFile.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
text.setText(" ");
}
});
//布局束记记
//新建文件
newFile.setMnemonic('N');
newFile.setAccelerator( KeyStroke.getKeyStroke('N',java.awt.Event.CTRL_MASK,true));
//打文件记记记
JMenuItem open = new JMenuItem("打记");
open.setMnemonic('O');
open.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK,true));
open.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
JFileChooser openfile = new JFileChooser();
openfile.setDialogTitle("打文件记记记");
openfile.setApproveButtonText("打记");
openfile.showOpenDialog(panel);
File filename = openfile.getSelectedFile();
StringBuffer strBF = new StringBuffer();
String error_message = "Error";
FileInputStream inputfile = null;
try{
char buffer[] = new char[1024];
inputfile = new FileInputStream(filename);
int len = 0;
FileReader in = new FileReader(filename.getAbsoluteFile());
while((len = in.read(buffer)) != -1)
{
strBF.append(buffer , 0 , len);
}
inputfile.close();
text.setText(strBF.toString());
String openfilename = filename.getName();
setTitle(openfilename);
}
catch(IOException ioEX)
{
JOptionPane.showMessageDialog(panel,error_message,title,type);
}
}});
//保存文件
JMenuItem save = new JMenuItem("保存");
save.setMnemonic('S');
save.setAccelerator(KeyStroke.getKeyStroke('S',java.awt.Event.CTRL_MASK,true));
save.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
JFileChooser savefile=new JFileChooser();
savefile.setApproveButtonText("保存");
savefile.setDialogTitle("保存文件");
savefile.showSaveDialog(panel);
File filesa=savefile.getSelectedFile();
String file_notfound_message="找不到文件";
FileOutputStream outputfile=null;
//记记记 理异常始
try
{
outputfile = new FileOutputStream(filesa);
}
catch(FileNotFoundException fe)
{
JOptionPane.showMessageDialog(panel,file_notfound_message,title,type);
}
String filecontent=text.getText();
String write_error_message="写文件记记";
try
{
outputfile.write(filecontent.getBytes());
}
catch(IOException ioEx)
{
JOptionPane.showMessageDialog(panel,write_error_message,title,type);
}
String cmessage="记记记记";
try
{
outputfile.close();
}
catch(IOException ioEx)
{
JOptionPane.showMessageDialog(panel,cmessage,title,type);
}
}
}
);
//退出
JMenuItem exit = new JMenuItem("退出");
exit.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
exit.setMnemonic('Q');
exit.setAccelerator(KeyStroke.getKeyStroke('Q',java.awt.Event.CTRL_MASK,true));
//记找
JMenuItem find = new JMenuItem("记找");
find.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
//因程太记记记记记.所以找功能没加上去了记记记记记记记记记记记.^_^
}
});
find.setMnemonic('F');
find.setAccelerator(KeyStroke.getKeyStroke('F',java.awt.Event.CTRL_MASK,true));
//剪切
JMenuItem cut = new JMenuItem("剪切");
cut.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
text.cut();
}
});
cut.setMnemonic('C');
cut.setAccelerator(KeyStroke.getKeyStroke('C',java.awt.Event.CTRL_MASK,true));
//记制
JMenuItem copy = new JMenuItem("记制");
copy.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
text.copy();
}
});
copy.setMnemonic('o');
copy.setAccelerator(KeyStroke.getKeyStroke('O',java.awt.Event.CTRL_MASK,true));
//粘记
JMenuItem paste = new JMenuItem("粘记");
paste.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
text.paste();
}});
paste.setMnemonic('P');
paste.setAccelerator(KeyStroke.getKeyStroke('P',java.awt.Event.CTRL_MASK,true));
JMenuItem about = new JMenuItem("记于");
about.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
int type=JOptionPane.INFORMATION_MESSAGE;
String title="记于";
String message="Make by cat lee";
JOptionPane.showMessageDialog(panel,message,title,type);
}});
file.add(newFile);
file.add(open);
file.add(save);
file.addSeparator();
file.add(exit);
edit.add(cut);
edit.add(copy);
edit.add(paste);
edit.add(find);
help.add(about);
}
public static void main(String[] args) {
Notepad notepad = new Notepad();
notepad.setSize(640, 480);
notepad.setVisible(true);
notepad.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}
本文档为【java记事本课程设计源代码1】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑,
图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。