第七章 Java图形用户界面练习(2)

2019-01-07 18:41

第七章 图形用户界面

JFrame f1=new JFrame();

f1.add(new EmployeeMess2()); f1.setTitle(\公司职员信息\ f1.pack();

f1.setVisible(true);

f1.setDefaultCloseOperation(3); } }

62

编译并运行测试程序,用户界面经鼠标拖动改变大小后,如图7-3所示。

自由练习7.2 修改自由练习7.1,按GridLayout方式布局屏幕。运行并观看屏幕显示效果。

实验示例7.1.4 职工食堂为了方便职工就餐,进行了一次“我所喜爱的主食和副食”调查,调查表中列出了一些食堂经营的主食和副食类,经营者将调查表发给各位职工,让他们推荐自己喜欢的主食和副食。经营者将根据调查结果确定其经营方向。试创建一个调查表式的选项界面。

实现该示例的步骤如下: ⑴ 简要分析

可以把主食类和副食类分开,主食类包括米饭、馒头、卤面、涝面、包子、水饺等;副食类可分为菜类和汤类,菜类包括红烧肉、酱排骨、卤鸡、烧鸭、烧鱼、炒青菜、炒豆芽、烧茄尖等;汤类包括西红柿蛋汤、虾仁蛋汤、白木耳甜汤、玉米甜汤等。

可以设计这样一个界面,按照主食、菜类和汤类划分,可以分别将它们放入Checkbox选择框中布局在界面上供选择。

⑵ 根据上述简要分析,给出如下参考程序代码(EealMenu.java): //我所喜爱的主食和副食调查表程序MealMenu.java

import java.awt.*; import javax.swing.*;

public class MealMenu extends JFrame {

Checkbox [] sele1 = new Checkbox[6]; Checkbox [] sele2 = new Checkbox[8]; Checkbox [] sele3 = new Checkbox[4]; JPanel panel1 = new JPanel(); JPanel panel2 = new JPanel(); JPanel panel3 = new JPanel(); JPanel panel4 = new JPanel(); JButton ok = new JButton(\确定\ JButton exit = new JButton(\退出\

JLabel lab = new JLabel(\请选择你所喜欢的美食菜肴!!!\ MealMenu() {

super(\请选择你所喜欢的食品调查表\//调用父类构造器,设置标题栏 sele1[0]=new Checkbox(\米饭\加入主食选择菜单项 sele1[1]=new Checkbox(\馒头\ sele1[2]=new Checkbox(\卤面\ sele1[3]=new Checkbox(\涝面\ sele1[4]=new Checkbox(\包子\ sele1[5]=new Checkbox(\水饺\

sele2[0]=new Checkbox(\红烧肉\加入副食菜类选择菜单项 62

第七章 图形用户界面 63

sele2[1]=new Checkbox(\酱排骨\ sele2[2]=new Checkbox(\卤鸡\ sele2[3]=new Checkbox(\烧鸭\ sele2[4]=new Checkbox(\烧鱼\ sele2[5]=new Checkbox(\炒青菜\ sele2[6]=new Checkbox(\炒豆芽\ sele2[7]=new Checkbox(\烧茄尖\

sele3[0]=new Checkbox(\西红柿蛋汤\加入副食汤类选择菜单项 sele3[1]=new Checkbox(\虾仁蛋汤\ sele3[2]=new Checkbox(\白木耳甜汤\ sele3[3]=new Checkbox(\玉米甜汤\

panel1.setBackground(Color.white); //设置容器panel1背景

for(int i=0; i

panel3.setBackground(Color.pink); //设置容器panel2背景

for(int i=0; i

for(int i=0; i

panel4.add(ok); //将按钮项加入到panel4容器中 panel4.add(exit); //.........................

Container pane=this.getContentPane(); //获得界面容器

pane.setLayout(new GridLayout(5,1)); //界面容器布局5行1列 pane.add(lab); //将标签项放入界面容器 pane.add(panel1); //将panen1放入界面容器 pane.add(panel2); //将panen2放入界面容器 pane.add(panel3); //将panen3放入界面容器 pane.add(panel4); //将panen4放入界面容器 this.pack();

this.setVisible(true); //窗口上内容是可见的

this.setDefaultCloseOperation(EXIT_ON_CLOSE); } }

⑶ 编译EealMenu.java程序,生成EealMenu.class类文件,以供其他应用程序所用。 ⑷ 程序及分析

程序中使用了awt和swing组件来构建用户界面,使用了3个Checkbox组件数组存放各分类项,并分别将它们放入3个JPanel容器中(采用默认布局)。由于是一个选择信息用户界面,所以增设了两个按钮,也将它们放入一个JPanel容器中。最后按照GridLayout布局,在用户界面(JFrame容器)上以每行一列的方式摆放各JPanel容器组件。

⑸ 测试EealMenu类的功能。编写一个简单的应用程序,创建EealMenu对象,验证EealMenu的功能。参考代码如下:

public class TestMealMenu {

public static void main( String[] args ) {

new MealMenu(); } }

编译并运行测试程序,执行结果如图7-4所示。

图7-4 示例7.1.4 用户界面

63

第七章 图形用户界面 64

自由练习7.3 仿照上边程序,创建一个学生选择下学期课程的选课屏幕界面。

7.2 实验二:菜单

实验目的

(1). 了解菜单栏(JmenuBar)、菜单(Jmenu)和菜单项(JmenuItem)的功能和作用。 (2). 使用JmenuBar、Jmenu和JMenuItem 类创建菜单。

实验要求

使用java.AWT和javax.swing类包中提供JmenuBar、Jmenu、JmenuItem及相关的组件编写程序创建并实现简洁明了的菜单用户界面。

实验内容

实验示例7.2.1 创建一个公司员工基本信息管理的菜单用户界面。

实现该示例的步骤如下: ⑴ 简要分析

一般来说,员工的基本信息管理可以包括登记员工信息、修改员工信息、查看员工信息、在员工调离后删除其信息等,此外还需要打印员工信息表以备案,有时还需要打印某个或某些员工的信息。对有些项目的说明提供帮助功能。

使用javax.swing类包中提供的JMenuBar、JMenu、JMenuItem功能将其划分为3个菜单:员工信息处理(添加个人信息、修改个人信息、查看个人信息、删除个人信息)、打印处理(打印所有信息、打印指定信息、打印指定员工的信息)和帮助信息。

⑵ 根据上述简要分析,给出如下参考程序代码(EmployeelMenu.java):

/*这是一个公司职员信息管理的菜单界面 *程序的名字是EmployeeMenu.prg */

import javax.swing.*;

public class EmployeeMenu extends JFrame {

JMenuBar empBar=new JMenuBar(); //定义菜单栏对象

JMenu mess = new JMenu(\员工信息处理\定义员工信息处理菜单对象 JMenuItem addMess = new JMenuItem (\添加个人信息\定义菜单项对象 JMenuItem editMess = new JMenuItem (\修改个人信息\ JMenuItem checkMess = new JMenuItem (\查看个人信息\ JMenuItem delMess = new JMenuItem (\删除个人信息\ JMenu prtMess=new JMenu(\打印处理\定义打印处理菜单对象

JMenuItem prt_all=new JMenuItem(\打印所有信息\定义菜单项对象 64

第七章 图形用户界面

JMenuItem prt_part=new JMenuItem(\打印指定信息\

JMenuItem prt_one=new JMenuItem(\打印指定员工的信息\ JMenu help=new JMenu(\帮助\定义帮助菜单对象

JMenuItem info=new JMenuItem(\关于帮助\定义菜单项对象 JMenuItem subject=new JMenuItem(\帮助主题\ JMenu exit = new JMenu(\退出\定义结束菜单对象 public EmployeeMenu() //构造方法 { this.setTitle(\公司员工信息处理\设置框架窗体标题

/* 以下把文件菜单项加入到Mess菜单中*/ mess.add(addMess); mess.add(editMess);

mess.addSeparator();//添加分割条 mess.add(checkMess); mess.add(delMess);

/* 以下把编辑菜单项加入到prtMess菜单中*/ prtMess.add(prt_all);

prtMess.addSeparator();//添加分割条 prtMess.add(prt_part);

prtMess.addSeparator();//添加分割条 prtMess.add(prt_one); /*以下把帮助菜单项加入到Help菜单中*/ help.add(info); help.add(subject);

/*以下把所有菜单加入到菜单栏中*/ empBar.add(mess);

图7-5 示例7.2.1 用户界面 empBar.add(prtMess);

empBar.add(help); empBar.add(exit); this.setJMenuBar(empBar); //将菜单栏加入框架窗口 this.setSize(300,200); this.setVisible(true); this.setDefaultCloseOperation(3); } }

65

⑶ 编译EmployeeMenu.java程序,生成EmployeelMenu.class类文件,以供其他应用程序所用。

⑷ 程序及分析

程序中使用了swing中的JMenuBar、JMenu和JMenuItem组件构建用户菜单界面。应该注意的是,本章的所有的实验示例只是创建了用户界面,并没有实现实际的功能,将在后边的章节中逐步实现其功能。

⑸ 测试EmployeelMenu类的功能。编写一个简单的应用程序,创建EmployeelMenu对象,验证EmployeeMenu的功能。参考代码如下:

public class TestMenu {

public static void main(String [] args) { new EmployeeMenu(); } }

自由练习7.4 仿造实验示例7.2.1程序,创建一个学生信息处理菜单界面。

65


第七章 Java图形用户界面练习(2).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:外国新闻史复习概略

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: