package myMenu;

import java.awt.FileDialog;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;

public class MyMenu {
	private Frame f;
	private MenuBar mb;
	private Menu m;
	private TextArea ta;
	private MenuItem openItem,saveItem,closeItem;
	private FileDialog openDia,saveDia;
	private File file;
	MyMenu()
	{
		init();
	}
	public void init()
	{
		f=new Frame("my window");
		f.setBounds(300, 100, 650, 600);
		f.setVisible(true);
		mb=new MenuBar();
		ta=new TextArea();
		m=new Menu("文件");
		openItem=new MenuItem("打开");
		saveItem=new MenuItem("保存");
		closeItem=new MenuItem("退出");
		
		m.add(openItem);
		m.add(saveItem);
		m.add(closeItem);
		mb.add(m);
		
		myEven();
		openDia=new FileDialog(f,"我要打开",FileDialog.LOAD);
		saveDia=new FileDialog(f,"我要保存",FileDialog.SAVE);
		f.setMenuBar(mb);
		f.add(ta);
	}
	
	private void myEven()
	{
		openItem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				openDia.setVisible(true);
				String dirPath=openDia.getDirectory();
				String fileName=openDia.getFile();
				if(dirPath==null ||fileName==null) 
					return ;
				ta.setText("");
				file=new File(dirPath,fileName);
				try {
					BufferedReader bufr=new BufferedReader(new FileReader(file));
					String line=null;
					while((line=bufr.readLine())!=null)
					{
						ta.append(line+"\r\n");
					}
					bufr.close();
				} catch (Exception e1) {
					throw new RuntimeException("读取失败");
				}
			}
		});
		
		saveItem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				if(file==null)
				{
					saveDia.setVisible(true);
					String dirPath=saveDia.getDirectory();
					String fileName=saveDia.getFile();
					if(dirPath==null || fileName==null) 
					return ;
					file=new File(dirPath,fileName);
				}
					BufferedWriter buf;
					try {
						buf = new BufferedWriter(new FileWriter(file));
						String text=ta.getText();
						buf.write(text);
						buf.flush();
						buf.close();
					} catch (IOException e1) {
						throw new RuntimeException("读取失败");
					}
					
				
			}
		});
		closeItem.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				System.exit(0);
			}
		});
		f.addWindowListener(new WindowAdapter() {
			public void windowClosing(WindowEvent e) {
				System.exit(0);
			}
		});
	}
	public static void main(String[] args) {
		new MyMenu();
	}
}
最近下载更多
zxcZ11  LV1 2023年5月24日
落樱不及你  LV7 2023年3月22日
微信网友_6292282163859456  LV4 2023年1月5日
Lvelvelve  LV2 2022年12月11日
xuweisong2010  LV27 2022年6月14日
wanglinddad  LV54 2021年6月24日
大鹏秀秀鹏鹏  LV14 2021年6月19日
新东方瑶酱  LV7 2021年2月8日
熊亚龙  LV1 2020年12月23日
wkq888  LV16 2020年12月15日
最近浏览更多
fff2003  LV6 1月11日
阿九JIUJJJJJJ 2023年12月22日
暂无贡献等级
DeanYao  LV2 2023年10月11日
shuangfu  LV24 2023年9月13日
13161895  LV1 2023年7月4日
whdsichen  LV1 2023年6月6日
caomin  LV4 2023年5月25日
zxcZ11  LV1 2023年5月24日
落樱不及你  LV7 2023年3月22日
xingxing1234  LV10 2023年3月22日
顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友