-------android培训、java培训、期待与您交流!
----------
以下代码实现的功能:
1.写入路径,点击转到,列出该路径下的目录及文件;
2.在路径文本框中敲入回车符,完成1功能;
3.新建菜单
4.点击菜单下的打开,可以读入该文件的文本信息;
5.点击菜单下的保存,可以保存大文本框中的文本信息;
6.点击菜单下的退出,可以结束程序!
/*
基本文件的读取与保存
Strawberry2013-5-6
*/
import java.awt.*;
import java.awt.event.*;
import java.io.*;
class AwtDemo
{
public static void main(String[] args)
{
new Awt();
}
}
class Awt
{
private Frame f;
private TextField txtf;
private TextArea txta;
private Label labAddr;
private Button bt;
private MenuBar mbar;
private Menu caidan;
private MenuItem openMenu;
private MenuItem saveMenu;
private MenuItem exitMenu;
Awt()
{
f = new Frame("my");
f.setBounds(200,200,500,450); // 设置出现的位置,及大小
f.setLayout(new FlowLayout());
labAddr = new Label("目录:");
f.add(labAddr);
txtf = new TextField(30);
f.add(txtf);
bt = new Button("转到");
f.add(bt);
txta = new TextArea(20, 60);
f.add(txta);
mbar = new MenuBar(); //mbar(MenuBar)
caidan = new Menu("菜单"); // |--caidan(Menu)
openMenu = new MenuItem("打开"); // |--openMenu(MenuItem)
saveMenu = new MenuItem("保存"); // |--saveMenu(MenuItem)
exitMenu = new MenuItem("退出"); // |--exitMenu(MenuItem)
mbar.add(caidan);
caidan.add(openMenu);
caidan.add(saveMenu);
caidan.addSeparator(); // ---------------分割线
caidan.add(exitMenu);
f.setMenuBar(mbar);
myEvent();
f.setVisible(true);
}
public void myEvent() //监听方法集
{
f.addWindowListener(new WindowAdapter()//窗体监听机制,由于有多个故有适配器
{
public void windowClosing(WindowEvent e)//当监听器发现窗体关闭,就会发生windwClosing动作,
{ //将事件打包,存于WindowEvent的e中,可以查看事件的相信信息!
System.exit(0); //程序退出
}
});
bt.addActionListener(new ActionListener()//button按钮的活动监听
{
public void actionPerformed(ActionEvent e)//只有这一个方法
{
showDir(txtf.getText());
}
});
/* button的双击监听
bt.addMouseListener(new MouseAdapter()
{
public void mouseClicked(ActionEvent e)
{
if(e.getClickCount() == 2) //双击判断
{
//方法区
}
}
});
*/
txtf.addKeyListener(new KeyAdapter()
{
public void keyPressed(KeyEvent e)
{
if(e.getKeyCode() == KeyEvent.VK_ENTER)//监听是否为输入了Enter
{
e.consume();//********此处注意:::由于不接收enter符,会有提示音!当不希望某一字符输入时,可以使用该函数撤销输入的字符!
showDir(txtf.getText());
}
}
});
openMenu.addActionListener(new ActionListener()//菜单的打开
{
public void actionPerformed(ActionEvent e)
{
FileDialog fd = new FileDialog(f, "打开文件");
fd.setVisible(true);
String dir = fd.getDirectory();//获取路径
String name = fd.getFile();
if((dir==null) || (name==null))
return;
else
showText(dir+name); //操作
return;
}
});
saveMenu.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
FileDialog fd = new FileDialog(f, "打开文件", FileDialog.SAVE);
fd.setVisible(true);
String dir = fd.getDirectory();
String name = fd.getFile();
if((dir==null) || (name==null))
return;
else
saveText(dir+name);
return;
}
});
exitMenu.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
System.exit(0);
}
});
}
public void showDir(String path) //列出目录及文件的文本信息
{
if(path.equals(""))
{
txta.setText("目录不能为空!");
return;
}
File dir = new File(path);
if(!dir.exists())
txta.setText("文件目录"+txtf.getText()+"不存在!");
else if(!dir.isDirectory())
txta.setText("只存在文件,不存在目录!");
else
{
txta.setText("");
String[] str = dir.list();
for(String s: str)
txta.append(s+"\r\n");
}
return;
}
public void showText(String path) //读取文件的文本信息
{
try
{
BufferedReader bufr = new BufferedReader(new FileReader(path));
txta.setText("");
String str = null;
while((str=bufr.readLine()) != null)
txta.append(str+"\r\n");
bufr.close();
}
catch (IOException e)
{
}
return;
}
public void saveText(String path) //保存大文本框中的文本信息
{
try
{
BufferedWriter bufw = new BufferedWriter(new FileWriter(path));
bufw.write(txta.getText());
bufw.close();
}
catch (IOException e)
{
}
return;
}
}
分享到:
相关推荐
张孝祥Java高级教程3_图形用户界面GUI笔记
黑马程序员_毕向东_Java基础视频教程第22天-06-GUI(Action事件).zip
GUI界面,用于设计友好的图形用户界面,以便能为用户提供方便。
第七章 GUIDE入门 7.1 概述 7.2 图形句柄入门 7.3 GUIDE工具入门 7.4 创建图形用户界面外观 7.5 图形用户界面编程 7.6 常用的图形界面函数 7.7 本章小结
GUI 图形化用户界面 彩屏LCD的程序
图形用户界面(gui)是通过窗口、图标、按钮、菜单、文本等图形对象构成用户界面
掌握和精通matlab之gui设计\图形用户界面(GUI)制作,Matlab的gui虽然简单,但有时候还是有些用处的
python初级界面gui简单布局
MATLAB 界面编程 图像处理的程序GUI界面实例
这是Java GUI可视化图形设计的汉诺塔(Hannoi)小游戏,使用Eclipse编译器制作,用户可以使用鼠标拖动盘子进行自己操作,或者选择自动演示;另外,增加了一些扩展功能:1、用户进行游戏的游戏时间记录;2、用户可...
基于MATLAB的图形用户界面(GUI)设计 GUI设计工具简介
GUI界面的边缘检测代码,可以帮助了解GUI界面的简单应用
Visual(可视化):采用图形用户界面(GUI)的程序设计方法。简单直观。 Basic:历史悠久,易学易用,功能强大的计算机程序设计语言。
图形用户界面GUI制作,属对应课本中的一章内容。
C语言图形界面开发范例,(附带动画功能),可移植性强
基于MATLAB平台的GUI界面的简单实例
资源名:行时域频域处理_通过变频、变速达到变声目的_用图形用户界面(GUI)_时域频域图形输出_前后波形进行比较_matlab 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的...
用于在MATLAB上建立GUI用户界面的源代码
应用matlab的GUI功能设计用户图形界面的一些例子.