我的进阶之路吧 关注:4贴子:67
  • 0回复贴,共1

【Java小程序】

只看楼主收藏回复

1.简单记事本程序java源码项目
import java.awt.Color;
import java.awt.FileDialog;
import java.awt.Font;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.TextArea;
import java.awt.Toolkit;
import java.awt.datatransfer.Clipboard;
import java.awt.datatransfer.DataFlavor;
import java.awt.datatransfer.StringSelection;
import java.awt.datatransfer.Transferable;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class Main extends Frame implements ActionListener {
private static final long serialVersionUID = 1L;
TextArea textArea = new TextArea();
MenuBar menuBar = new MenuBar();
Menu fileMenu = new Menu("File");
MenuItem newItem = new MenuItem("New");
MenuItem openItem = new MenuItem("Open");
MenuItem saveItem = new MenuItem("Save");
MenuItem saveAsItem = new MenuItem("Save As");
MenuItem exitItem = new MenuItem("Exit");
Menu editMenu = new Menu("Edit");
MenuItem selectItem = new MenuItem("Select All");
MenuItem copyItem = new MenuItem("Copy");
MenuItem cutItem = new MenuItem("Cut");
MenuItem pasteItem = new MenuItem("Paste");
String fileName = null;
Toolkit toolKit = Toolkit.getDefaultToolkit();
Clipboard clipBoard = toolKit.getSystemClipboard();
private FileDialog openFileDialog = new FileDialog(this, "Open File", FileDialog.LOAD);
private FileDialog saveAsFileDialog = new FileDialog(this, "Save File As", FileDialog.SAVE);
public Main() {
setTitle("记事本程序-by Jackbase");
setFont(new Font("Times New Roman", Font.PLAIN, 12));
setBackground(Color.white);
setSize(400, 300);
fileMenu.add(newItem);
fileMenu.add(openItem);
fileMenu.addSeparator();
fileMenu.add(saveItem);
fileMenu.add(saveAsItem);
fileMenu.addSeparator();
fileMenu.add(exitItem);
editMenu.add(selectItem);
editMenu.addSeparator();
editMenu.add(copyItem);
editMenu.add(cutItem);
editMenu.add(pasteItem);
menuBar.add(fileMenu);
menuBar.add(editMenu);
setMenuBar(menuBar);
add(textArea);
addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
}
});
newItem.addActionListener(this);
openItem.addActionListener(this);
saveItem.addActionListener(this);
saveAsItem.addActionListener(this);
exitItem.addActionListener(this);
selectItem.addActionListener(this);
copyItem.addActionListener(this);
cutItem.addActionListener(this);
pasteItem.addActionListener(this);
}
public void actionPerformed(ActionEvent e) { //监听事件
Object eventSource = e.getSource();
if (eventSource == newItem) {
textArea.setText("");
} else if (eventSource == openItem) {
openFileDialog.show();
fileName = openFileDialog.getDirectory() + openFileDialog.getFile();
if (fileName != null)
readFile(fileName);
} else if (eventSource == saveItem) {
if (fileName != null)
writeFile(fileName);
} else if (eventSource == saveAsItem) {
saveAsFileDialog.show();
fileName = saveAsFileDialog.getDirectory() + saveAsFileDialog.getFile();
if (fileName != null)
writeFile(fileName);
} else if (eventSource == selectItem) {
textArea.selectAll();
} else if (eventSource == copyItem) {
String text = textArea.getSelectedText();
StringSelection selection = new StringSelection(text);
clipBoard.setContents(selection, null);
} else if (eventSource == cutItem) {
String text = textArea.getSelectedText();
StringSelection selection = new StringSelection(text);
clipBoard.setContents(selection, null);
textArea.replaceRange("", textArea.getSelectionStart(), textArea.getSelectionEnd());
} else if (eventSource == pasteItem) {
Transferable contents = clipBoard.getContents(this);
if (contents == null)
return;
String text;
text = "";
try {
text = (String) contents.getTransferData(DataFlavor.stringFlavor);
} catch (Exception exception) {
}
textArea.replaceRange(text, textArea.getSelectionStart(), textArea.getSelectionEnd());
} else if (eventSource == exitItem) {
System.exit(0);
}
}
public void readFile(String fileName) { //读取文件处理
try {
File file = new File(fileName);
FileReader readIn = new FileReader(file);
int size = (int) file.length();
int charsRead = 0;
char[] content = new char[size];
while (readIn.ready())
charsRead += readIn.read(content, charsRead, size - charsRead);
readIn.close();
textArea.setText(new String(content, 0, charsRead));
} catch (IOException e) {
System.out.println("Error opening file");
}
}
public void writeFile(String fileName) { //写入文件处理
try {
File file = new File(fileName);
FileWriter writeOut = new FileWriter(file);
writeOut.write(textArea.getText());
writeOut.close();
} catch (IOException e) {
System.out.println("Error writing file");
}
}
@SuppressWarnings("deprecation")
public static void main(String[] args) {
Frame frame = new Main(); //创建对象
frame.show(); //是对象显示
}
}
//本文出自:http://www.cnblogs.com/huasili/p/4120196.html


IP属地:广东1楼2014-11-26 17:42回复