62,623
社区成员
发帖
与我相关
我的任务
分享
public void fileSave_actionPerformed(ActionEvent e1) {
//以下是将文件写入计算机!
try {
JFileChooser fileSave = new JFileChooser();
fileSave.setDialogTitle("保存文件");
//fileSave.addChoosableFileFilter(new myFilter("*.txt","Files(*.txt)"));
fileSave.addChoosableFileFilter(fileSave.getFileFilter());
if (fileSave.APPROVE_OPTION != fileSave.showSaveDialog(this))
return;
BufferedWriter dataOut = new BufferedWriter(new BufferedWriter(new
FileWriter(fileSave.getSelectedFile() + ".txt")));
//RandomAccessFile dataOut=new RandomAccessFile(fileSave.getSelectedFile(),"rw");
String c = null;
do {
String str = fileArea.getText();
dataOut.write(str);
dataOut.close();
} while (c != null);
} catch (Exception e2) {
System.out.println("Catch exception:有错误!" + e2.toString());
}
}
public static void main(String arg[]) {
Note nt = new Note();
nt.show();
}
public void fileCut_actionPerformed(ActionEvent e) {
fileArea.cut();
}
public void filePaste_actionPerformed(ActionEvent e) {
fileArea.paste();
}
public void fileColor_actionPerformed(ActionEvent e) {
JColorChooser fileColor = new JColorChooser();
//fileArea.setForeground(fileColor.showDialog(this,"颜色",Color.red));
//fileArea.setSelectionColor(fileColor.showDialog(this,"颜色",Color.red));
fileArea.setSelectionColor(fileColor.showDialog(this, "颜色", Color.black));
}
package infant.query;
import javax.swing.*;
import javax.swing.event.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import java.awt.color.*;
import java.awt.font.*;
import javax.swing.undo.*;
/**
* <p>Title: </p>
*
* <p>Description: </p>
*
* <p>Copyright: Copyright (c) 2007</p>
*
* <p>Company: </p>
*
* @author not attributable
* @version 1.0
*/
public class Note extends JFrame {
boolean isChange = false;
boolean wasChange = false;
JMenuBar menuBar = new JMenuBar();//实例菜单栏
JMenu menuFile = new JMenu("File");//实例"File"菜单
JMenuItem menuFileOpen = new JMenuItem("Open..");//实例“File”菜单下的“Open..”选项
JMenuItem menuFileSave = new JMenuItem("Save..");
JMenuItem menuFileExit = new JMenuItem("Exit");
JMenu menuEdit = new JMenu("Edit");
JMenuItem menuFileCut = new JMenuItem("Cut");
JMenuItem font = new JMenuItem("Font");
JMenuItem menuFilePaste = new JMenuItem("Paste");
JTextArea fileArea = new JTextArea();
public Note() {
this.setTitle("记事本");
Toolkit tool = this.getToolkit(); //窗口图标!
Image myimage = tool.getImage("戒指.jpg");
this.setIconImage(myimage);
setDefaultCloseOperation(DO_NOTHING_ON_CLOSE);//设置用户在此窗体上发起 "close" 时默认执行的操作。“DO_NOTHING_ON_CLOSE”是指关闭的时候什么都不做
addWindowListener(new WindowAdapter() {//添加指定的窗口侦听器
public void windowClosing(WindowEvent e) {
exit();
}
});
menuFileOpen.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fileOpen_actionPerformed(e);
}
});
menuFileSave.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fileSave_actionPerformed(e);
}
});
menuFileExit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fileExit_actionPerformed(e);
}
});
menuFileCut.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fileCut_actionPerformed(e);
}
});
menuFilePaste.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
filePaste_actionPerformed(e);
}
});
font.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
fileColor_actionPerformed(e);
}
});
fileArea.getDocument().addDocumentListener(new DocumentListener() {
public void insertUpdate(DocumentEvent e) {
wasChange = isChange;
isChange = true;
}
public void removeUpdate(DocumentEvent e) {
wasChange = isChange;
isChange = true;
}
public void changedUpdate(DocumentEvent e) {
wasChange = isChange;
isChange = true;
}
});
setSize(500, 450);//设置窗体大小
menuBar.add(menuFile);
menuFile.setMnemonic('F');
menuBar.add(menuEdit);
menuEdit.setMnemonic('E');
menuFile.add(menuFileOpen);
menuFileOpen.setMnemonic('O'); //访问健;
menuFileOpen.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_O,
InputEvent.CTRL_MASK)); //快捷健;
menuFile.add(menuFileSave);
menuFileSave.setMnemonic('S');//设置当前模型上的键盘助记符,不过现在setMnemonic(char mnemonic)方法已废弃,应使用setMnemonic(int mnemonic)
menuFileSave.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_S,
InputEvent.CTRL_MASK));
menuFile.addSeparator();
menuFile.add(menuFileExit);
menuFileExit.setMnemonic('E');
menuEdit.add(menuFileCut);
menuFileCut.setMnemonic('C');
menuFileCut.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_C,
InputEvent.CTRL_MASK));
menuEdit.add(menuFilePaste);
menuFilePaste.setMnemonic('P');
menuFilePaste.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_P,
InputEvent.CTRL_MASK));
menuEdit.add(font);
font.setMnemonic('N');
font.setAccelerator(KeyStroke.getKeyStroke(KeyEvent.VK_N,
InputEvent.CTRL_MASK));
this.getContentPane().add(new JScrollPane(fileArea));
setJMenuBar(menuBar);
fileArea.setLineWrap(true);
}
public void fileExit_actionPerformed(ActionEvent e) {//“fileExit”选项监听器
System.exit(0);//执行退出操作
}
public void fileOpen_actionPerformed(ActionEvent e) {//“fileOpen”选项监听器
//以下是filter;
JFileChooser fileChooser = new JFileChooser();//目录文件选择器
//fileChooser.addChoosableFileFilter(new myFilter("*.txt","Files(*.txt)"));
fileChooser.addChoosableFileFilter(fileChooser.getFileFilter());
if (fileChooser.APPROVE_OPTION != fileChooser.showOpenDialog(this))//“fileChooser.APPROVE_OPTION”:选择确认(yes、ok)后返回该值。
return;
//以下是文件读
BufferedReader dataIn = null;//“BufferedReader”:从字符输入流中读取文本
try {
dataIn = new BufferedReader(new FileReader(fileChooser.
getSelectedFile().getPath()));
String c = null;
do {
c = dataIn.readLine();//读取一个文本行
if (c != null)
fileArea.append(c + "\n");//将给定文本追加到文档结尾,此处为“换行”
} while (c != null);
} catch (Exception ex) {
System.out.println("Catch exception:" + ex.toString());
}
}
public void exit() {
if (isChange == false)
System.exit(1);
else {
int decision = JOptionPane.showConfirmDialog(this,//退出时如果未执行保存操作则提示
"The File has Change.\n" +
"Do you want to save the change?",
"Notepad", JOptionPane.YES_NO_CANCEL_OPTION,
JOptionPane.WARNING_MESSAGE);//拥有“是”“否”“撤销”类型的提示框
if (decision == JOptionPane.YES_OPTION) {//选择“是”的情况
//以下是将文件写入计算机!
try {
JFileChooser fileSave = new JFileChooser();
fileSave.setDialogTitle("保存文件");
//fileSave.addChoosableFileFilter(new myFilter("*.txt","Files(*.txt)"));
fileSave.addChoosableFileFilter(fileSave.getFileFilter());
if (fileSave.APPROVE_OPTION != fileSave.showSaveDialog(this))
return;
BufferedWriter dataOut = new BufferedWriter(new
BufferedWriter(new
FileWriter(fileSave.getSelectedFile())));//“BufferedWriter”:将文本写入字符输出流
String c = null;
do {
String str = fileArea.getText();
dataOut.write(str);
dataOut.close();
} while (c != null);
} catch (Exception e2) {
System.out.println("Catch exception:有错误!" + e2.toString());
}
} else if (decision == JOptionPane.NO_OPTION)//选择“否”的情况
System.exit(1);
else if (decision == JOptionPane.CANCEL_OPTION)//选择“取消”的情况
;
;
}
//innerclass.fileSave_actionPerformed();
}
/***********************/
}