| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 399 人关注过本帖
标题:请大虾们帮帮忙(急)
取消只看楼主 加入收藏
hjp200
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2005-12-21
收藏
 问题点数:0 回复次数:0 
请大虾们帮帮忙(急)

我老婆(呵呵是我偷偷的一相情愿的叫)给我题,叫我帮她做,她叫我在圣诞节那天必须做好给她,时间很紧,我现在也在做着,但我怕到时做不出来,所以请大虾们帮帮忙,小第在这多谢大家了。实不相瞒,那天正好是小第的生日,所以还请大家帮帮忙,谢谢大家~
可以的话,请大家把做好的发到我邮箱来hjp200@163.com.非常感谢大家。


项目任务:制作类似Windows记事本的程序,提供如下的菜单:

打开……

关闭

保存

另存为

退出

剪切

复制

粘贴

文件 编辑
打开 剪贴
关闭 复制
保存 粘贴
另存为
退出

技术要点:

打开、保存文件使用文件输入输出流。

打开、另存文件时候,使用系统预定义的文本对话框。

剪切、复制、粘贴功能可灵活使用 TextArea类的方法:String , getSelectedText()setSelectedText(String s)



import java.io.*;
import java.awt.*;
import java.awt.event.*;
class FrameInOut extends Frame implements ActionListener
{
FileDialog fileDlg;
String str,fileName;

TextArea textArea = new TextArea();

MenuBar mb = new MenuBar();
Menu menu1 = new Menu("文件");
MenuItem open = new MenuItem("打开");
MenuItem close = new MenuItem("关闭");
MenuItem save0 = new MenuItem("保存");
MenuItem save = new MenuItem("另存为");
MenuItem exit = new MenuItem("退出");
Menu menu2 = new Menu("编辑");
MenuItem cut = new MenuItem("剪贴");
MenuItem copy = new MenuItem("复制");
MenuItem affix = new MenuItem("粘贴");

FrameInOut()
{
super("我的文本编辑器--新文本文件");
setSize(300,200);
add("Center",textArea);
menu1.add(open);
menu1.add(close);
menu1.add(save0);
menu1.add(save);
menu1.add(exit);
menu2.add(cut);
menu2.add(copy);
menu2.add(affix);
mb.add(menu1);
mb.add(menu2);
setMenuBar(mb);

open.addActionListener(this);//将行为监听器加入到open中
close.addActionListener(this);
save0.addActionListener(this);
save.addActionListener(this);
exit.addActionListener(this);
cut.addActionListener(this);
copy.addActionListener(this);
affix.addActionListener(this);

this.addWindowListener(new WA());
show();
}

public void actionPerformed(ActionEvent e)
{
byte byteBuf[]=new byte[10000];
if(e.getSource()==exit)
{
dispose();
System.exit(0);
}
if(e.getSource()==close)
{
textArea.setBackground(new Color(128,128,128));
textArea.setText(null);
setTitle("我的文本编辑器");
}
if(e.getSource()==open)
{
textArea.setBackground(new Color(255,255,255));
fileDlg=new FileDialog(this,"打开文件");
fileDlg.setDirectory("c:\\Documents and Settings");
fileDlg.show();
fileName=fileDlg.getDirectory()+fileDlg.getFile();

try
{
FileInputStream in = new FileInputStream(fileName);
in.read(byteBuf);
in.close();

str= new String(byteBuf);
textArea.setText(str);
setTitle("我的文本编辑器"+fileName);
}
catch(IOException E)
{}
}

if(e.getSource() == save)
{
fileDlg = new FileDialog(this,"另存为",FileDialog.SAVE);
fileDlg.setDirectory("c:\\Documents and Settings");
fileDlg.show();

fileName=fileDlg.getDirectory()+fileDlg.getFile();

str=textArea.getText();
byteBuf=str.getBytes();
try
{
FileOutputStream out= new FileOutputStream(fileName);
out.write(byteBuf);
out.close();
}
catch(IOException E)
{}
}
}
}


import java.io.*;
import java.awt.*;
import java.awt.event.*;
public class TextEditor
{
public static void main(String args[])
{
new FrameInOut();
}
}





import java.io.*;
import java.awt.*;
import java.awt.event.*;
class WA extends WindowAdapter
{
public void windowClosing(WindowEvent e)
{
((FrameInOut)e.getSource()).dispose();
System.exit(0);
}
}







2005-12-23 07:59
快速回复:请大虾们帮帮忙(急)
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.037871 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved