GUI标准组件及事件处理(二)

本文介绍了一个使用Java AWT库创建简单图形用户界面的示例,包括菜单栏、菜单项及文件对话框的实现方法。通过这个示例可以了解如何在Java中使用事件监听器响应用户的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

import java.awt.*;
import java.awt.event.*;
public class KY7_2 extends Frame implements ActionListener {
static Frame f;          //声明一个框架
static FileDialog fd1;    //声明一个文件对话框对象
  static FileDialog fd2;
public static void main(String args[]) {
KY7_2  k = new KY7_2();  
    f = new Frame();   // 创建一个框架f  
       MenuBar mb=new MenuBar();// 创建一个菜单条 mb 
       Menu m1=new Menu("文件");
       Menu m2=new Menu("帮组");// 在菜单条mb中添加两个菜单m1("文件")和m2("帮助")
       mb.add(m1);
       mb.add(m2);
       MenuItem m11=new MenuItem("打开");
       MenuItem m12=new MenuItem("关闭");
       MenuItem m13=new MenuItem("退出");
       m1.add(m11);
       m1.add(m12);
       m1.add(m13);
       MenuItem m21=new MenuItem("目录");
       MenuItem m22=new MenuItem("索引");
       MenuItem m23=new MenuItem("关于");
       m2.add(m21);
       m2.add(m22);
       m2.add(m23);
       Menu m3=new Menu("编辑");
       MenuItem m31=new MenuItem("复制");
       MenuItem m32=new MenuItem("剪切");
       MenuItem m33=new MenuItem("粘贴");
       m3.add(m31);
       m3.add(m32);
       m3.add(m33);
       
       /*  "文件"菜单m1中有三个菜单项:m11("打开")、
m12("关闭")和m13("退出")*/
 /*  "帮助"菜单m2中有三个菜单项:m21("目录")、
m22("索引")和m23("关于")*/
 //  "文件"菜单m1中还有一个子菜单m3("编辑")
 /*  "编辑"子菜单m3 中有三个菜单项:m31("复制")、
m32("剪切")和m33("粘贴")*/  
m11.addActionListener(k);   /* 允许菜单项"打开"引发一个事件,该事件的处理者为当前对象 k  */
m13.addActionListener(k);   /* 允许菜单项"退出"引发一个事件,该事件的处理者为当前对象 k  */
f.setSize(350,200);   // 设置框架f的大小
f.setMenuBar(mb);   // 设置框架f的菜单条为mb  
f.setVisible(true);    
}
public void actionPerformed (ActionEvent e) {  /* 处理由菜单项"打开"和"退出" 所引发的事件*/
if (e.getActionCommand() == "打开") {  /* 若"打开"菜单项引发事件,则打开“打开文件对话框”*/
FileDialog fd = new FileDialog (f, "open", FileDialog.SAVE); 
fd.setVisible (true); 
}
if (e.getActionCommand() == "保存") {   /* 若"保存"菜单项引发事件,则打开“保存文件对话框”*/
FileDialog fd2=new FileDialog(f,"save",FileDialog.SAVE);
fd2.setVisible(true);
}//创建并打开一个“保存文件对话框” 
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值