删减这个java文本编辑器代码

原代码地址http://hi.baidu.com/freish/blog/item/21a604f7c0271b28730eec61.html删减要求只保留文件菜单中打开... 原代码地址http://hi.baidu.com/freish/blog/item/21a604f7c0271b28730eec61.html
删减要求 只保留 文件菜单中打开另存另存为退出 ,编辑菜单中保留复制粘贴剪切查找功能。视图 工具 帮助菜单及其功能全部不要。总之越简单越好,什么错误提示关闭时提示保存都不要。
展开
 我来答
召秋梵悌p1
2012-06-20 · TA获得超过2282个赞
知道小有建树答主
回答量:616
采纳率:80%
帮助的人:709万
展开全部
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
import java.io.*;
import javax.swing.undo.*;

public class NotePad extends JFrame {
private UndoManager manager;
private JFileChooser choose;
private File selectedfile;
private JTextArea text;
private java.awt.Container container;
private JMenuBar menuBar;
private JTextField status;
private boolean newPage = false;
// File菜单
private JMenu menu;
private JMenuItem open;
private JMenuItem save;
private JMenuItem saveAs;
private JMenuItem exit;
// Edit菜单
private JMenu edit;
private JMenuItem cut;
private JMenuItem copy;
private JMenuItem paste;
private JMenuItem searchAndReplace;

public NotePad() {
super("记事本");
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Exception e) {
}
container = getContentPane();
container.setLayout(new BorderLayout(0, -2));
manager = new UndoManager();
text = new JTextArea();
text.setFont(new Font("宋体", Font.PLAIN, 14));
text.getDocument().addUndoableEditListener(manager);
text.setTabSize(2);
text.setSelectedTextColor(Color.WHITE);
text.setSelectionColor(Color.DARK_GRAY);
text.setLineWrap(true);
text.setWrapStyleWord(true);
text.setCaretColor(Color.RED);
text.setMargin(new Insets(3, 10, 3, 7));
text.setDragEnabled(true);
container.add(new JScrollPane(text,
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
JScrollPane.HORIZONTAL_SCROLLBAR_AS_NEEDED));
menuBar = new JMenuBar();
// File菜单
menu = new JMenu("文件(F)");
menu.setMnemonic('F');

open = new JMenuItem("打开(O)");
open.setMnemonic('O');
open.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {

choose = new JFileChooser();

int state = choose.showOpenDialog(container);
if (state == JFileChooser.APPROVE_OPTION) {
status.setText(choose.getSelectedFile().toString());
try {
selectedfile = choose.getSelectedFile();
FileReader isr = new FileReader(selectedfile);
text.read(isr, "");
isr.close();
newPage = false;
} catch (IOException e) {
JOptionPane.showMessageDialog(container, "打开文件失败",
"ERROR", JOptionPane.ERROR_MESSAGE);
}
}

}
});

save = new JMenuItem("保存(S)");
save.setMnemonic('S');
save.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
if (newPage == true || selectedfile == null) {
choose = new JFileChooser();
int state = choose.showSaveDialog(container);
if (state == JFileChooser.APPROVE_OPTION) {
try {
File file = choose.getSelectedFile();
FileWriter os = new FileWriter(file);
os
.write(text.getText(), 0, text.getText()
.length());
os.flush();
file.createNewFile();
os.close();
newPage = false;
} catch (IOException e) {
JOptionPane.showMessageDialog(container, "保存文件失败",
"ERROR", JOptionPane.ERROR_MESSAGE);
}
}
} else if (newPage == false && selectedfile != null) {
try {
FileWriter os = new FileWriter(selectedfile);
os.write(text.getText(), 0, text.getText().length());
os.flush();
os.close();
} catch (IOException e) {
JOptionPane.showMessageDialog(container, "保存文件失败",
"ERROR", JOptionPane.ERROR_MESSAGE);
}
}
}
});

saveAs = new JMenuItem("另存为(A)");
saveAs.setMnemonic('A');
saveAs.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
choose = new JFileChooser();
int state = choose.showSaveDialog(container);
if (state == JFileChooser.APPROVE_OPTION) {
try {
File file = choose.getSelectedFile();
FileWriter os = new FileWriter(file);
os.write(text.getText(), 0, text.getText().length());
os.flush();
file.createNewFile();
os.close();
newPage = false;
} catch (IOException e) {
JOptionPane.showMessageDialog(container, "保存文件失败",
"ERROR", JOptionPane.ERROR_MESSAGE);
}
}
}
});

exit = new JMenuItem("退出(Q)");
exit.setMnemonic('Q');
exit.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
System.exit(0);
}
});

menu.add(open);
menu.add(save);
menu.add(saveAs);
menu.add(exit);

// Edit菜单
edit = new JMenu("编辑(E)");
edit.setMnemonic('E');

cut = new JMenuItem("剪切(X)");
cut.setMnemonic('X');
cut.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
text.cut();
}
});

copy = new JMenuItem("复制(C)");
copy.setMnemonic('C');
copy.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
text.copy();
}
});

paste = new JMenuItem("粘贴(V)");
paste.setMnemonic('V');
paste.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
text.paste();
}
});

searchAndReplace = new JMenuItem("查找与替换(M)");
searchAndReplace.setMnemonic('M');
searchAndReplace.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
new Search();
}
});

edit.add(cut);
edit.add(copy);
edit.add(paste);
edit.addSeparator();
edit.add(searchAndReplace);

menuBar.add(menu);
menuBar.add(edit);

status = new JTextField();
status.setEditable(false);
container.add(status, BorderLayout.SOUTH);
setSize(730, 660);
// pack();
container.add(menuBar, BorderLayout.NORTH);
Dimension frameSize = getSize();
Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
setLocation((screenSize.width - frameSize.width) / 2,
(screenSize.height - frameSize.height) / 2);
setVisible(true);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

}

public static void main(String args[]) {
new NotePad();
}

private class Search extends JFrame {

private JTabbedPane tab;
private Container cont;
// 查找
private JPanel searPanel;
private JTextField searField;
private JButton searButton;

// 替换
private JPanel replPanel;
private JPanel buttonPanel;
private JTextField replField;
private JButton replButton;
private JLabel label;
private JTextField replSear;

public Search() {
super("查找与替换");
cont = getContentPane();
tab = new JTabbedPane(JTabbedPane.TOP);

// 查找
searPanel = new JPanel(new FlowLayout());
searField = new JTextField(15);
searButton = new JButton("查找下一处");
searPanel.add(searField);
searPanel.add(searButton);
searButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
String searText = searField.getText().trim();
if (searText.equals("")) {
JOptionPane.showMessageDialog(cont, "查找串为空", "提示信息",
JOptionPane.INFORMATION_MESSAGE);
} else {
String allText = text.getText();
int start = allText.indexOf(searText, text
.getSelectionEnd());
if (start == -1)
JOptionPane.showMessageDialog(container,
"已到达文件末尾,没有找到\n" + searText, "提示信息",
JOptionPane.INFORMATION_MESSAGE);
else
text.select(start, start + searText.length());
}
}
});

// 替换
replPanel = new JPanel(new GridLayout(3, 1));
buttonPanel = new JPanel(new FlowLayout());
label = new JLabel("替换为");
replField = new JTextField(15);
replSear = new JTextField(15);
replButton = new JButton("替换下一处");
replButton.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent event) {
String searText = replSear.getText();
if (searText.equals("")) {
JOptionPane.showMessageDialog(cont, "要替换的串为空", "提示信息",
JOptionPane.INFORMATION_MESSAGE);
} else {
String allText = text.getText();
int start = allText.indexOf(searText, text
.getSelectionEnd());
if (start == -1)
JOptionPane.showMessageDialog(container, "替换完毕",
"提示信息", JOptionPane.INFORMATION_MESSAGE);
else
text.replaceRange(replField.getText(), start, start
+ searText.length());
}
}
});
replPanel.add(replSear);
replPanel.add(label);
replPanel.add(replField);
buttonPanel.add(replButton);
JPanel panel = new JPanel(new FlowLayout());
panel.add(replPanel);
panel.add(buttonPanel);

tab.addTab("查找", searPanel);
tab.addTab("替换", panel);
tab.setVisible(true);
cont.add(tab);
pack();
Point paraLoca = container.getLocationOnScreen();
setLocation(paraLoca.y + getSize().width, paraLoca.x
+ getSize().height);
setVisible(true);
setResizable(false);
addWindowListener(new WindowAdapter() {
public void windowClosing() {
dispose();
}
});
}
}
}
满意请采纳!
匿名用户
2012-06-20
展开全部
首先打开我的主页后点装扮模式会出现挑选模板 添加装饰 曾减模块 改变版式四个功能.
请选取第三个曾减模块之后就会删除与添加功能.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式