文档章节

AWT编程

非著名程序员Bla
 非著名程序员Bla
发布于 2016/05/18 18:04
字数 309
阅读 5
收藏 0
package MenuDemo;

import java.awt.BorderLayout;
import java.awt.Checkbox;
import java.awt.CheckboxMenuItem;
import java.awt.Component;
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;

public class MenuDem {
private Frame f = new Frame("测试");
private TextArea ta = new TextArea();
Menu file = new Menu("文件");
MenuItem exit = new MenuItem("退出", new MenuShortcut(KeyEvent.VK_E, true));// 子项
Menu edit = new Menu("编辑");
MenuItem auto = new MenuItem("自动换行");
// edit.addSeparator();//分割线 添加的位置不对,应该在下面添加
MenuItem copy = new MenuItem("复制", new MenuShortcut(KeyEvent.VK_C, true));
MenuItem getCopy = new MenuItem("粘贴", new MenuShortcut(KeyEvent.VK_V, true));
// edit.addSeparator();
Menu format = new Menu("格式");// 有向右的箭头:二级菜单
MenuItem zhu = new MenuItem("注释");
MenuItem zhuAuto = new MenuItem("自动注释");

class listener implements ActionListener {

@Override
public void actionPerformed(ActionEvent e) {
String menuString = e.getActionCommand();// 是ActionEvent类型的一个参数e的方法
ta.append("用户单击了“" + menuString + "”项\n");
if (menuString.equals("退出")) {
System.exit(0);
}
}
}

public void init() {

// 按关系添加,将menuitem增加到menu中
file.add(exit);
edit.add(auto);
edit.addSeparator();// 分割线*--*----在此处添加,才能显示正确
edit.add(copy);
edit.add(getCopy);
edit.addSeparator();// 分割线
edit.add(format);
format.add(zhu);
format.add(zhuAuto);
edit.add(auto);
edit.add(auto);
// 将mune加到menubar中
MenuBar bar = new MenuBar();
bar.add(file);
bar.add(edit);

// 将menubar加到窗体中,通过setMenuBar()
f.setMenuBar(bar);
//
f.add(ta, BorderLayout.SOUTH);
f.pack();
f.setVisible(true);

// 绑定事件
exit.addActionListener(new listener());
auto.addActionListener(new listener());
copy.addActionListener(new listener());
getCopy.addActionListener(new listener());
edit.addActionListener(new listener());
file.addActionListener(new listener());
edit.addActionListener(new listener());
format.addActionListener(new listener());
}

public static void main(String[] args) {
new MenuDem().init();
}

} AWT编程

AWT编程


本文转载自:http://blog.csdn.net/yangrunkangbla/article/details/45134253

共有 人打赏支持
非著名程序员Bla
粉丝 15
博文 75
码字总数 0
作品 0
合肥
后端工程师
私信 提问
14.1-全栈Java笔记: Java语言中GUI到底是神马鬼?| AWT | Swing

到目前为止,我们在Java中编写的基本都是基于控制台的程序;而Java编程语言之所以如此流行的一个主要原因之一,就是因为它支持图形用户界面功能,即GUI(Graphical User Interface)。 GUI(...

全栈Java
2017/08/09
0
0
全栈Java笔记:打飞机游戏实战项目|AWT技术|MyGameFrame

简介和项目目标 通过游戏项目学习整个Java基础知识体系,我们做了精心的设计,让每一章知识都能获得应用。 比如:多线程用来实现动画效果、容器实现对于多发炮弹的存取和处理、常用类等等的应...

全栈Java
2017/07/27
0
0
细说Java GUI:AWT,SWT,Swing

历史 Internet上有许多围绕这一争论的故事。你可能已经听说过它们中的大多数了,其中之一有助于让你理清头绪,让我们就从这里开始,Amy Fowler是Swing阵营的一个倡导者。 回到上个世纪90年代...

javasql
2014/02/05
0
2
java swing 组件技术(上)

第一次写自己的博客,明知道写得很水,还是努力去写了,希望踏出第一步之后,能有着更好的发展。这几天看了一些资料,总结了一下自己所学的关于java swing的知识。 一、 java swing 组件技术...

静心天涯
2013/06/14
0
6
Java开发冒险(AVG)游戏杂谈

之前用过Android,Python的pygame,c#编程语言开发过游戏,一般来说,Java开发的游戏通常是AVG(英文adwenture game的简称)冒险游戏。 就技术角度而言,使用JavaAVG开发可以算得所有游戏类型...

crossmix
2015/10/11
217
0

没有更多内容

加载失败,请刷新页面

加载更多

如何使用Hanlp加载大字典

问题 因为需要加载一个 近 1G 的字典到Hanlp中,一开始使用了CustomDictionay.add() 方法来一条条的加载,果然到了中间,维护DoubleArraTre 的成本太高,添加一个节点,都会很长时间,本来时...

左手的倒影
9分钟前
0
0
2018 年度新增开源软件排行榜之国产 TOP 50

2018 年开源中国社区「新增」开源软件排行榜之国产 TOP 50 终于发布了! 榜单根据 2018 年开源中国社区新收录的开源项目的关注度、活跃度,以及所属分类整理而来,相信在一定程度上反映了国内...

youfen
13分钟前
0
0
浅谈几种设计模式

Num1:单例模式 基本概念:保证一个类仅有一个实例,并提供一个访问它的全局访问点。 常见写法: 懒汉式 public class Singleton { /* 持有私有静态实例,防止被引用,此处赋值为nul...

瑞查德-Jack
15分钟前
0
0
Time-wait状态(2MSL)一些理解

1. 编写TCP/SOCK 服务时,SO_REUSEADDR到底是什么意思? 这个套接字选项通知内核,如果端口忙,但TCP状态处于TIME_WAIT,可以重用端口。如果端口忙,TCP状态处于其他状态,重用端口时依旧指明...

Henrykin
22分钟前
0
0
数组处理

$arr = [ 0 => ['bid' => 1, 'money' => 1000, 'a' => 1, 'b' => 2, 'c' => 3], 1 => ['bid' => 1, 'money' => 1000, 'a' => 1, 'b' => 2, 'c' => 3],];$arr1 = [ ...

我才是张先生
31分钟前
7
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部