哪个大哥可以帮我用Java编写1个全面的记事本啊!!~~~谢谢了啊!!!!

500行代码左右谢谢了不要写太复杂简单点~~~~~!!!!!谢谢... 500行代码左右 谢谢了 不要写太复杂 简单点~~~~~!!!!!谢谢 展开
 我来答
jack_1218
2007-06-18 · 超过23用户采纳过TA的回答
知道答主
回答量:129
采纳率:0%
帮助的人:0
展开全部
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.io.*;
class TextEditorFrame extends JFrame{
File file=null;
Color color=Color.red;

TextEditorFrame(){
initTextPane();
initAboutDialog();
initToolBar();
initMenu();
}
void initTextPane(){
getContentPane().add(new JScrollPane(text));
}

JTextPane text=new JTextPane(); //这是用来做文本框的
JFileChooser filechooser=new JFileChooser(); //文件选择框
JColorChooser colorchooser=new JColorChooser();//
JDialog about=new JDialog(this); //关于对话框
JMenuBar menubar=new JMenuBar();//菜单

JMenu[] menus=new JMenu[]{
new JMenu("文件"),
new JMenu("编辑"),
new JMenu("帮助")
};

JMenuItem menuitems[][]=new JMenuItem[][]{{
new JMenuItem("新建"),
new JMenuItem("打开"),
new JMenuItem("保存"),
new JMenuItem("退出")
},

{

new JMenuItem("复制"),
new JMenuItem("剪切"),
new JMenuItem("粘贴"),
new JMenuItem("颜色")
},
{
new JMenuItem("关于")
}
};
void initMenu(){

for(int i=0;i<menus.length;i++){
menubar.add(menus[i]);
for(int j=0;j<menuitems[i].length;j++){
menus[i].add(menuitems[i][j]);
menuitems[i][j].addActionListener( action );
}
}
this.setJMenuBar(menubar);
}
ActionListener action=new ActionListener(){ //when here have not wrong:
public void actionPerformed(ActionEvent e){
JMenuItem mi=(JMenuItem)e.getSource();
String id=mi.getText();
if(id.equals("新建")){
text.setText("");
file=null;
}else if(id.equals("打开")){
if(file !=null)filechooser.setSelectedFile(file);
int returnVal=filechooser.showOpenDialog(TextEditorFrame.this);
if(returnVal==JFileChooser.APPROVE_OPTION){

file=filechooser.getSelectedFile();
openFile();
}

}else if(id.equals("保存")){
if(file!=null) filechooser.setSelectedFile(file);
int returnVal=filechooser.showSaveDialog(TextEditorFrame.this);
if(returnVal==JFileChooser.APPROVE_OPTION){
file=filechooser.getSelectedFile();
saveFile();
}

}else if(id.equals("退出")){
TextEditorFrame f=new TextEditorFrame();
int s=JOptionPane.showConfirmDialog(f,"你真的要结束吗","结束程序",JOptionPane.YES_NO_CANCEL_OPTION);
if(s==JOptionPane.YES_OPTION)
System.exit(0);
}else if(id.equals("剪切")){
text.cut();
}else if(id.equals("复制")){
text.copy();
}else if(id.equals("粘贴")){
text.paste();
}else if(id.equals("color")){
color=JColorChooser.showDialog(TextEditorFrame.this,"",color);
text.setForeground(color);

}else if(id.equals("关于")){
about.setSize(200,150);
about.show();
}

}

};

void saveFile(){
try{
FileWriter fw=new FileWriter(file);
fw.write(text.getText());
fw.close();
}
catch(Exception e){e.printStackTrace();}

}

void openFile(){
try{
FileReader fr=new FileReader(file);
int len=(int)file.length();
char []buffer=new char[len];
fr.read(buffer,0,len);
fr.close();
text.setText(new String(buffer));
}catch(Exception e){e.printStackTrace();}

}

void initAboutDialog(){
about.getContentPane().add(new JLabel("作者-覃树新:记事本Q1.0版本"));
about.setModal(true);
about.setSize(200,100);
}
JToolBar toolbar=new JToolBar();//我来加上工具条
JButton [] buttons=new JButton[]{
new JButton("", new ImageIcon("qin.jpg")),
new JButton("", new ImageIcon("shu.jpg")),
new JButton("", new ImageIcon("xin.jpg"))
};

void initToolBar(){
for(int i=0;i<buttons.length;i++)
toolbar.add(buttons[i]);
buttons[0].setToolTipText("复制");
buttons[0].addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
text.copy();
}
});
buttons[1].setToolTipText("剪切");
buttons[1].addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
text.cut();
}
});

buttons[2].setToolTipText("粘贴");
buttons[2].addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent e){
text.paste();
}
});

this.getContentPane().add(toolbar,BorderLayout.NORTH);
}
}

public class F{
public static void main(String args[]){

TextEditorFrame f=new TextEditorFrame();

f.addWindowListener(new WindowAdapter(){
public void windowClosing(WindowEvent e)

{
TextEditorFrame f=new TextEditorFrame();
int s=JOptionPane.showConfirmDialog(f,"你真的要结束吗","结束程序",JOptionPane.YES_NO_OPTION);
if(s==JOptionPane.YES_OPTION)
System.exit(0);}
});

f.setTitle("简单的记事本");
f.setSize(800,600);
f.show();
}
}

参考资料: http://code.ddvip.com/view/11280096006248.html

推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式