一个记事本Demo

import java.awt.CheckboxMenuItem;
import java.awt.Frame;
import java.awt.Menu;
import java.awt.MenuBar;
import java.awt.MenuItem;
import java.awt.MenuShortcut;
import java.awt.TextArea;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

public class NotePad {
 private Frame f = new Frame("记事本");
 private MenuBar mb = new MenuBar();
 Menu file = new Menu("文件");
 Menu edit = new Menu("编辑");
 MenuItem newItem = new MenuItem("新建");
 MenuItem saveItem = new MenuItem("保存");
 MenuItem exitItem = new MenuItem("退出",new MenuShortcut(KeyEvent.VK_X));
 CheckboxMenuItem autoWrap = new CheckboxMenuItem("自动换行");
 MenuItem copyItem = new MenuItem("复制");
 MenuItem pasteItem = new MenuItem("粘贴");
 Menu format = new Menu("格式");
 MenuItem commentItem = new MenuItem("注释",new MenuShortcut(KeyEvent.VK_SLASH , true));
 MenuItem cancelItem = new MenuItem("取消注释");
 private TextArea ta = new TextArea(6 , 40);
 
 public void init()
 {
  //匿名内部类创建菜单监听器
  ActionListener menuListener = new ActionListener()
  {
   public void actionPerformed(ActionEvent e)
   {
   String cmd = e.getActionCommand();
   ta.append("单击“"+cmd+"”菜单"+"\n");
   if (cmd.equals("退出"))
   {
    System.exit(0);
   }
  }
 };
 //为commentItem菜单添加事件监听器
 commentItem.addActionListener(menuListener);
 exitItem.addActionListener(menuListener);
 file.add(newItem);
 file.add(saveItem);
 file.add(exitItem);
 edit.add(autoWrap);
 edit.addSeparator();
 edit.add(copyItem);
 edit.add(pasteItem);
 format.add(commentItem);
 format.add(cancelItem);
 edit.add(new MenuItem("-"));
 edit.add(format);
 mb.add(file);
 mb.add(edit);
 f.setMenuBar(mb);
 //匿名内部类创建监听器对象
 f.addWindowListener(new WindowAdapter()
 {
  public void windowClosing(WindowEvent e)
  {
   System.exit(0);
  }
 });
 f.add(ta);
 f.pack();
 f.setVisible(true);
}
 public static void main(String[] args)
 {
  new NotePad().init();
 }
 }

时间: 2024-08-01 20:04:20

一个记事本Demo的相关文章

ArcGIS API for JavaScript开发环境搭建及第一个实例demo

原文:ArcGIS API for JavaScript开发环境搭建及第一个实例demo ESRI公司截止到目前已经发布了最新的ArcGIS Server for JavaScript API v3.9,它提供了更为丰富而又强大的功能.     一.安装前准备 1.ArcGIS Server for JavaScript API各版本下载地址:http://support.esrichina-bj.cn/2011/0223/960.html,我们选择下载最新的"ArcGIS API for Ja

微信小程序留言,记事本demo案例编写

此次编写留言,记事本demo,涉及到的小程序的技术主要是存入缓存和读取缓存.还有小程序基本组件知识. wxml代码如下: <!--pages/test/test.wxml--> <text>pages/test/test.wxml</text> <view class="mes_view"> <input type="text" placeholder="请输入留言内容" bindinput=

这是关于FastJson的一个使用Demo,在Java环境下验证的

1 public class User { 2 private int id; 3 private String name; 4 public int getId() { 5 return id; 6 } 7 public void setId(int id) { 8 this.id = id; 9 } 10 public String getName() { 11 return name; 12 } 13 public void setName(String name) { 14 this.n

Autofac 一个使用Demo

一:接口 二:实现: 三:调用: 首先上图: 一:接口代码 public interface IPersonDa { PersonEntity Get(int id); } 二:实现 public class PersonDa : IPersonDa { public PersonEntity Get(int id) { using (BaseMgr.BaseSysDbContext db = new BaseSysDbContext()) { var result = db.People.Wh

javascript 跟随鼠标移动的提示框的一个小demo

下面提供一种跟随鼠标移动的提示框的思路,方便在以后工作中应用,主要是应用到鼠标移动产生的数值来进行移动提示框的定位... CSS代码   .box{height:100px;width:100px;background:orange;position:relative;margin:40px;} .move{height:20px;width:20px;background:red;position:absolute;left:0px;top:0px;display:none;} HTML代码

jQuery 中 ajax 提交数据应用的一个小demo

举一个jquery中ajax的应用小 demo 便于以后的更多项目拓展 ,这里要注意的是保存的文件名问题 ... ajax02.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title></title> </head> <body> <div id="form&qu

jQuery 中 ajax 请求数据应用的一个小demo

举一个jquery中ajax的应用小 demo 便于以后的更多项目拓展 ,这里要注意的是保存的文件名和文件图片路径问题 ... ajax01.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title> ajax小例子 </title> </head> <body> <!--

Highcharts+Ajax+Json+Sturts2实现的图形异步实时刷新的一个简单demo

原文:Highcharts+Ajax+Json+Sturts2实现的图形异步实时刷新的一个简单demo 源代码下载地址:http://www.zuidaima.com/share/1550463370480640.htm 此功能可以用在后端对数据的实时抓取,前端动态更新时使用,可以根据数据的变化进行实时刷新,基于之前我上传的一个图形demo改制.如有意见建议,疑问,大家可以留言一起探讨. 源代码截图:

使用 React 和 Flux 创建一个记事本应用

React,来自 Facebook,是一个用来创建用户界面的非常优秀的类库.唯一的问题是 React 不会关注于你的应用如何处理数据.大多数人把 React 当做 MV* 中的 V.所以,Facebook 引入了一种称作 Flux 的模式,提供了一个功能上的通道,可用于应用内的数据处理.这个教程简短的介绍了 Flux 模式并且展示了如何使用 React 和 Flux 架构搭建一个记事本应用. Flux 入门 Flux 依赖于一个单的数据流.在这个 Flux 模式中有两个关键的组件: Stores