实验12 gui设计(2)

更新时间:2024-03-06 08:32:01 阅读量: 综合文库 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

实验12 GUI设计(2)

一、 实验目的

? 掌握下拉式菜单的设计——创建菜单条、菜单、菜单项对象,并进行正

确的装配;

? 熟悉布局管理器的使用——特别是FlowLayout、BorderLayout、

GridLayout的使用。

二、 实验步骤

1、 下图是一程序运行的结果,请根据图形和注释填空,并回答问题:

程序代码:

import java.awt.*;

public class MenuExample extends Frame { MenuExample(String title) { super(title);//设置框架标题

MenuBar mbar = _________________;//创建菜单条

//创建菜单对象:文件,编辑,帮助 Menu menuFile = new Menu(\文件\ Menu menuEdit = _________________; Menu menuHelp = _________________;

//创建\文件\菜单的菜单项对象

MenuItem menuItemFileNew=new MenuItem(\新建\ MenuItem menuItemFileOpen=_________________; MenuItem menuItemFileSave=new MenuItem(\保存\

1

}

}

MenuItem menuItemFileSaveAs=_________________; MenuItem menuItemFileQuit=new MenuItem(\退出\

//创建\编辑\菜单的菜单项对象

MenuItem menuItemEditUndo=new MenuItem(\撤消\MenuItem menuItemEditCut=_________________;

MenuItem menuItemEditCopy=new MenuItem(\复制\MenuItem menuItemEditPaste=_________________;

//创建\帮助\菜单的菜单项对象

MenuItem menuItemHelp=new MenuItem(\关于...\

//将菜单项添加到对应的菜单中 menuFile.add(menuItemFileNew);

__________________________________; __________________________________; menuFile.add(menuItemFileSaveAs);

__________________________________;//在菜单中增加一条分隔线 menuFile.add(menuItemFileQuit);

menuEdit.add(menuItemEditUndo);

menuEdit.addSeparator();//在菜单中增加一条分隔线 __________________________________; menuEdit.add(menuItemEditCopy); menuEdit.add(menuItemEditPaste); menuHelp.add(menuItemHelp);

//将菜单添加到菜单条中 mbar.add(menuFile); _________________; _________________;

//将菜单条加入到框架 _________________;

public static void main(String args[]) {

MenuExample menu = new MenuExample(\简单文本编辑器\ menu.pack();

menu.setSize(300, 200); menu.setVisible(true); }

2

问题:

1) 菜单条、菜单、菜单项对应的类是什么? 2) 如何将菜单条、菜单、菜单项对象装配成菜单?

2、 下面是一窗口的菜单系统,请模仿上一题代码编程实现:

3、运行下列程序,并回答有关问题:

import java.awt.*;

public class LayoutDemo extends Frame {

private String name[] = { \\\\\\\\\\ \

private Button button[] = new Button[name.length]; public LayoutDemo() {

setTitle(\布局管理器\

setLayout(new FlowLayout());

for (int i = 0; i < name.length; i++) { button[i] = new Button(name[i]); add(button[i]); } }

public static void main(String argc[]) { LayoutDemo f = new LayoutDemo(); f.setSize(300, 200);

3

f.setVisible(true); } }

问题:

1) 这一程序是以什么布局来管理组件的?请改变窗口大小,然后观察图形的变化。

2) 组件的排列方式是什么?能否让它左对齐或右对齐? 3) 怎样设置组件间的空隙?

4、修改上一程序,使之以4X4方式排列组件,组件间的水平、垂直空隙均为10;

5、下图方框的分别是标签、多行文本框、按钮组件,请用窗口、面板、BorderLayout布局管理器显示所要求的图形效果。

下堂实验预习内容

常用组件的使用(TestFiled、TestArea、Button、Choice等)

4

本文来源:https://www.bwwdw.com/article/oaba.html

Top