实验5图形用户界面设计
一.实验目的:
1.掌握常见组件的定义
2.理解常见的布局方式及其特点
3.掌握事件处理的原理和事件处理程序的编程方法
二.实验内容:
1创建一个继承侦听类或实现侦听接口的类
2写出相应的事件处理程序,创建监听程序对象,注册监听程序对象。
三.实验要求:
编写一个猜数字的游戏,按下“产生随机数”按钮产生一个0~9
的随机数,则在屏幕的提示框
显示“输入所猜测的数字”,当输入所猜测的数字并按“确
定”按钮后,在提示框中提示“输入
正确”(或“猜小了”、或“猜大了”)。
.*;
publicclassGuessNumextendsJFrameimplementsActionListener
{
publicintRandomNum=0;//产生的随机数;
publicintinputNum=0;//输入的数据
publicJButtonpressButton=newJButton("产生随机数");//按钮
publicJButtonMakesureButton=newJButton("确定");
publicJTextFieldPointout=newJTextField("下面输入所猜测的数
字:",15);//提
示框
publicJTextFieldPointout2=newJTextField(15);//输入框
JPanelp1=newJPanel();//面板
JPanelp2=newJPanel();
JPanelp3=newJPanel();
JPanelp4=newJPanel();
Containerc=getContentPane();//内容窗格
publicGuessNum()//类构造方法
{
super("猜数游戏");
ionListener(this);
ionListener(this);
out(newGridLayout(4,1));//网格布局
table(true);
(pressButton);//将各组件放入面板
(Pointout);
(MakesureButton);
(Pointout2);
(p1);//将面板添加入内容窗格
}
publicvoidactionPerformed(ActionEvente)//按下"产生随机数"后
的处理
{
if((JButton)rce()==pressButton)
{
RandomNum=(int)(()*10);
t("下面输入所猜测的数字:");
(p2);//将各面板添加入内容窗格
(p4);
(p3);
ible(fal);//刷新界面
ible(true);
}
elif((JButton)rce()==MakesureButton)//按下"确定"
后的处
理
{
inputNum=nt(t());
if(inputNum>RandomNum)//当输入数大于随机数时
{
t("猜大了");
t("");
}
elif(inputNum
{
t("猜小了");
t("");
}
el//当输入数等于随机数时
{
t("输入正确");
t("");
}
}
}//actionPerformed()
publicstaticvoidmain(Stringargs[])
{
GuessNumapp=newGuessNum();
aultCloOperation(_ON_CLOSE);
e(300,200);
ible(true);
}
}
没加面板
有加面板
没加面板(网格布局)
加面板(网格布局)
五、实验小结
(1)在使用GUI图形用户界面设计的过程中,根据所需的控件加
以编程即可,好处是无需太多算法,而且以上几个不同的窗
体功能实现基本类似,在本次实验中通过编写窗体控件,熟
悉了GUI的设计和用法。
(2)通过本次实验,基本上掌握了使用awt与swing组件设计图
形用户界面的方法,包括对窗口,对话框等工具的合理利用。
此外,在注册单击事件监听器与窗口事件监听器时,一定要
注意响应事件,为其提供事件处理方法。
(3)在输入字符串时,要注意抛出异常,当字符串不能转化成整
数或所输入的整数不符合规则时,弹出对话框,显示输入错
误,重新输入。
本文发布于:2022-12-31 18:04:25,感谢您对本站的认可!
本文链接:http://www.wtabcd.cn/fanwen/fan/90/66978.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |