第二次java实验

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

第七次实验:GUI标准组件及事件处理

一、实验目的

了解图形用户界面基本组件:框架、面板、按钮、标签、菜单、列表等的使用方法;了解如何使用布局管理器对组件进行管理;理解和掌握Java 的事件处理机制。

二、实验要求

1. 了解Java图像用户界面的开发,掌握基本组件的使用。

2. 掌握编写独立运行的窗口界面的方法,了解菜单和对话框的使用方法。

3. 理解Java 的事件处理机制,掌握为不同组件编写事件处理程序的方法。

三、实验内容

(一)在面板中添加多个组件,并进行合理的布局

♦程序功能:在一个框架(Frame)容器中添加一个面板(Panel)容器,并分别在框架和面板容器中添加组件并使用不同的布局管理方式。

♦请编写KY7_1.java 程序文件,源代码如下:

import java.awt.*;

import java.awt.Color;

public class KY7_1

{

public static void main(String args[])

{

Frame f = new Frame(); //创建一个框架f

Panel p = new Panel(); //创建一个面板p

f.add(p); //把面板p添加到框架f中

p.setBackground(Color.blue); //设置面板p的背景颜色为蓝色

p.setLayout(new FlowLayout()); //设置面板p的布局为流式布局

Label l = new Label();

p.add(l); //在面板p中添加一个标签l

Button button1 = new Button();

Button button2 = new Button();

Button button3 = new Button();

Button button4 = new Button();

Button button5 = new Button();

Button button6 = new Button();

p.add(button1);

p.add(button2); p.add(button3); p.add(button4); p.add(button5); p.add(button6); //在面板p 中添加六个按钮 Choice c=new Choice(); // 创建一个下拉列表c , c.addItem("北京"); // 下拉列表c 中有三个选项:北京、上海和天津 c.addItem("上海"); c.addItem("天津"); p.add(c); //把列表c 添加到面板p 中

f.setBounds(400,400,400,400); f.setVisible(true);

f.validate(); //设置框架f 的大小和可见性

}

}

(二)为窗口添加菜单,并处理由菜单项所引发的事件

♦ 程序功能:在窗口中添加菜单条,在菜单条中添加菜单,并在菜单中添加菜单项和

子菜单。通过选择菜单项可以引发不同的事件,从而执行不同操作,例如点击“打开”菜单项可以打开一个“打开文件对话框”。

♦ 编写KY7_2.java 程序文件,代码如下:

import java.awt.*;

import java.awt.event.*;

public class KY7_2 extends Frame implements ActionListener

{static Frame f;

m1

m2 m

static FileDialog fd1;

static FileDialog fd2;

public static void main(String args[])

{KY7_2 k = new KY7_2();

f = new Frame();

MenuBar mb = new MenuBar();

Menu m1 = new Menu("文件");

Menu m2 = new Menu("帮助");

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.add(m3);

m11.addActionListener(k);

m13.addActionListener(k);

f.setSize(350,200);

f.setMenuBar(mb);

f.setVisible(true);}

public void actionPerformed (ActionEvent e)

{ if (e.getActionCommand() == "打开")

{FileDialog fd1 = new FileDialog (f, "open", FileDialog.SAVE);

fd1.setVisible (true);

}

if (e.getActionCommand() == "保存")

{FileDialog fd2 = new FileDialog (f, "save", FileDialog.SAVE);

fd2.setVisible (true);

} }}

相关文档
最新文档