AWT编程

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编程


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值