java GUI(实例项目--记事本)

//package mymenu;

//java记事本

import java.awt.*;

import java.awt.event.*;

import java.io.*;

public class MenuLianXi {

//定义窗体

private Frame f;

//定义菜单栏

private MenuBar menubar;

//定义文本区

private TextArea textarea;

//定义菜单

private Menu file_menu;

//定义菜单项

private MenuItem close_Item,open_Item,save_Item;

//定义显示对话框

private FileDialog openDia,saveDia;

//定义一个文件,用来保存

private File file;

//定义构造函数

MenuLianXi() {

//在构造函数里添加init()方法。

init();

}

//定义设置UI的界面的方法。

public void init()

{

//设置窗体的基本信息

f=new Frame("我的记事本");

f.setBounds(300,100,650,600);

//f.setLayout(new FlowLayout());

//初始化菜单栏

menubar=new MenuBar();

//初始化文本区

textarea=new TextArea();

//初始化菜单

file_menu=new Menu("文件");

//初始化菜单项

open_Item=new MenuItem("打开");

close_Item=new MenuItem("退出");

save_Item=new MenuItem("保存");

//在菜单里添加菜单项或者子菜单

file_menu.add(open_Item);

file_menu.add(save_Item);

file_menu.add(close_Item);

//在菜单栏里添加菜单

menubar.add(file_menu);

//在窗体里添加菜单栏

f.setMenuBar(menubar);

//初始化对话框

openDia=new FileDialog(f,"我的打开",FileDialog.LOAD);

saveDia=new FileDialog(f,"我的保存",FileDialog.SAVE);

//在窗体中添加文本区

f.add(textarea);

//添加监听器

myEvent();

//设置窗体可见

f.setVisible(true);

}

////定义myEvent方法添加监听器

public void myEvent()

{

//为保存菜单项添加活动监听

save_Item.addActionListener(new ActionListener(){

//复写actionPerformed方法

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);

}

try{

//定义一个写入流,向文件里写入文本

BufferedWriter bufw=new BufferedWriter(new FileWriter(file));

//定义字符串接收文本呢区的文本。

String text=textarea.getText();

//向文本里写入文本呢信息。

bufw.write(text);

//关闭写入流。

bufw.close();

}

catch(IOException e4)

{

throw new RuntimeException();

}

}

});

//为打开菜单项添加活动监听

open_Item.addActionListener(new ActionListener(){

public void actionPerformed(ActionEvent e)

{

openDia.setVisible(true);

//获取对话框里目录

String dirPath=openDia.getDirectory();

//获取对话框里文件名

String fileName=openDia.getFile();

//System.out.println(dirPath+"--"+fileName);

//避免发生空指针异常

if(dirPath==null||fileName==null)

return ;

//清空文本区

textarea.setText("");

//定义文件和文件目录对象

file=new File(dirPath,fileName);

try{

//调用BufferedReader读取流读取文件

BufferedReader bufr=new BufferedReader(new FileReader(file));

String line=null;

//获取bufr中的文本信息

while((line=bufr.readLine())!=null)

{

//将文本信息添加到文本区中。

textarea.append(line+"\r\n");

}

//关闭读取流。

bufr.close();

}

catch(IOException e1)

{

throw new RuntimeException("读取失败");

}

}

});

//为菜单项closeItem添加一个活动监听

close_Item.addActionListener(new ActionListener(){

@Override

//复写抽象方法actionPerformed,添加处理动作。

public void actionPerformed(ActionEvent e) {

// TODO 自动生成的方法存根

System.exit(0);

}

});

//窗体调用addWindowListener方法,传递一个接口类(监听适配器)WindowAdapter。

f.addWindowListener(new WindowAdapter(){

//复写windowClosing方法。

public void windowClosing(WindowEvent e){

System.exit(0);

}

});

}

public static void main(String[] args) {

new MenuLianXi();

}

}

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-07 02:37:56

java GUI(实例项目--记事本)的相关文章

java GUI(实例小项目--列出磁盘目录)

//java实例小项目:列出磁盘目录. import java.awt.*; import java.awt.event.*; import java.io.File; class MyWindDemo{ //定义一个对话框 private Dialog d; //定义一个标签 private Label lab; //定义一个对话框上的按钮 private Button but_dlg; //定义一个窗体 private Frame f; //定义一个文本框 private TextField

JAVA/GUI程序之记事本

自上半年JAVA课程结束后,再也没有看过JAVA了,最近不是很忙,又简单的看了看,本博客纯属记录学习过程,请大神们别笑,其中错误是难免的,毕竟是新手写的博客.下面就进入我们的正题吧,复习GUI时,就想到WINDOWS的记事本,如果用GUI来仿写应该不难.实现向记事本这样的文本编辑器,第一步,当然是界面的问题,这对于GUI来说再简单不过了,所以我也不多说了,直接贴上代码即可,相信都能看懂. 创建菜单代码: 1 //创建主菜单 2 public void createMenu() 3 { 4 //创

结对项目:四则运算题目生成器(JAVA+GUI)

结对项目(JAVA+GUI) 结对伙伴: 胡梓泽(3118005002) 黄伟洪(3118005004) Github链接:https://github.com/Hubbard1999/operation 1 项目简介 1.1 题目描述 1.1.1 题目:实现一个自动生成小学四则运算题目的命令行程序(也可以用图像界面,具有相似功能). 1.1.2 说明: 真分数:1/2, 1/3, 2/3, 1/4, 1'1/2, -. 自然数:0, 1, 2, -. 运算符:+, ?, ×, ÷. 括号:(,

第14篇-JAVA GUI编程

第14篇-JAVA GUI编程 每篇一句 :道路一开始开辟的时候总是存在障碍的 初学心得: 原本下定决心才能开始的事情也变得理所当然 (笔者:JEEP/711)[JAVA笔记 | 时间:2017-04-25| JAVA GUI编程 ] 1.什么是界面 图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口)是指采用图形方式显示的计算机操作用户界面 与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受 2.Java 基础类 JFC 的基本

Java程序设计基础项目总结报告

Java程序设计基础项目总结报告 20135313吴子怡 一.项目内容 运用所学Java知识,不调用Java类库,实现密码学相关算法的设计,并完成TDD测试,设计运行界面. 二.具体任务 1.要求实现的密码算法包括:对称密码算法,非对称密码算法,消息摘要算法. 2.要求完成对每个算法中的public类进行TDD测试,测试代码尽可能多,并且应尽可能涵盖特殊符号.数字.字母等输入字符. 3.设计每个密码算法的GUI界面,提供输入输出区域供使用者输入.查看. 三.计划明细 周数 进度安排 备注 Wee

Java GUI编程中AWT/swing/SWT的优缺点

http://www.cnblogs.com/dugang/archive/2010/10/22/1858478.html AWT AWT是Abstract Window Toolkit(抽象窗口工具包)的缩写,是SUN专门针对Java GUI编程提供的最早的也是最初的开发工具包,用来建立和设置Java图形用户界面,这个工具包提供了一套与本地图形界面交互的接口.AWT 中的图形函数与操作系统所提供的图形函数之间有着一一对应的关系(peers).也就是说,当我们利用 AWT 来构件图形用户界面的时

java(课程设计之记事本界面部分代码公布)

代码:涉及记事本的一些界面......!! 1 /* 2 *java课程设计之记事本(coder @Gxjun) 3 * 编写一个记事本程序 4 * 要求: 5 * 用图形用户界面实现. 6 * 能实现编辑.保存.另存为.查找替换等功能. 7 * 提示:使用文件输入输出流. 8 */ 9 package project; 10 11 import javax.swing.*; 12 import java.awt.*; 13 import java.awt.event.*; //引用类设置触发事

JAVA GUI 工具

Java GUI图形界面开发工具 上大学那会儿比较主流的Java图形开发插件是:Visual Editor 和 SWT Designer, 不久又出了个Jigloo, 但去官网看了下发现这个东西也很久没有更新了,不过据说短小精悍,五脏俱全.SWT Designer不久前也被Google收购后重新整合进自己的产品中,然后开源了,现在名字叫:WindowBuilder Pro,看上去界面组件很丰富强大的样子,支持Swing, AWT, SWT, 以及Google自家的GWT等等. 目前JAVA图形界

数独GUI程序项目实现

数独GUI程序项目实现 导语:最近玩上了数独这个游戏,但是找到的几个PC端数独游戏都有点老了...我就想自己做一个数独小游戏,也是一个不错的选择. 前期我在网上简单地查看了一些数独游戏的界面,代码.好好地了解了一下现在数独游戏的大概的框架.当然,我自己写的小游戏,也许没那么好.但是我一定会一点点升级这个小游戏的. 目前,我做的游戏是V1.0版本的,只能说实现了这个游戏的基本功能:可以进行数独游戏.可以更换背景色以及一些其他的基本功能.接下来,在空余时间,我会进行对其中一Studying功能的实现