首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
以下程序中,当用户单击“移动”按钮以后,就可以使用方向键控制屏幕上句子的移动,单击“停止”按钮,则句子不再随着方向键移动。运行结果如下图所示 注意:请勿改动其他已有语句内容,仅在横线处填入适当语句。 import java.appl
以下程序中,当用户单击“移动”按钮以后,就可以使用方向键控制屏幕上句子的移动,单击“停止”按钮,则句子不再随着方向键移动。运行结果如下图所示 注意:请勿改动其他已有语句内容,仅在横线处填入适当语句。 import java.appl
admin
2009-12-22
52
问题
以下程序中,当用户单击“移动”按钮以后,就可以使用方向键控制屏幕上句子的移动,单击“停止”按钮,则句子不再随着方向键移动。运行结果如下图所示
注意:请勿改动其他已有语句内容,仅在横线处填入适当语句。
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
public class Example2_8 extends Applet implements KeyListener
{
public void keyTyped(KeyEvent e) {}
public void keyReleased(KeyEvent e) {}
Button button;
Button stopButton;
Label out;
int x,y;
public void _______ ()
{
button = new Button("移动");
button.addActionListener(new AddMoveListener(this));
stopButton = new Button("停止移动");
stopButton.addActionListener(new RemoveListener(this));
stopButton.setEnabled(false);
out = new nabel("按下按钮以后我可以随方向键移动");
add(button);
add(stopButton);
add (out);
}
public void start()
{
super, start ();
}
public void keyPressed(KeyEvent e)
{
x=out.getBounds().x;
y=out.getBounds().y;
if(e.getKeyCode()==KeyEvent.VK_UP)
{
y=y-2;
if(y<=0) y=0;
out. setLocation (x, y);
}
else if(e.getKeyCode()==KeyEvent.VK_DOWN)
{
y=y+2;
if (y>=300) y=300;
out. setLocation (x, y);
}
else if(e.getKeyCode()==KeyEvent.VK_LEFT)
{
x=x-2;
if(x<=0) x=0;
out. setLocation (x, y);
}
else if(e.getKeyCode()==KeyEvent.VK_RiGHT)
{
x=x+2;
if(x>=300) x=300;
out. setLocation (x, y);
}
}
class AddMoveListener implements ActionListener
{
Example2_8 lis;
public AddMoveListener(Example2_8 lis)
{
this.lis = lis;
}
public void actionPerformed(ActionEvent e)
{
button. _________(lis);
stopButton, setEnabled (true);
}
}
class RemoveListener implements ActionListener
{
Example2_8 lis;
public RemoveListener(Example2_8 lis)
{
this.lis = lis;
}
public void actionPerformed(ActionEvent e)
{
button, removeKeyListener (lis);
stopButton.setEnabled(false);
}
}
}
Example2_8. html
<HTML>
<HEAD>
<TITLE> Example2_8</TITLE>
</HEAD>
<BODY>
<APPLET CODE="Example2_8.class"WIDTH=400 HEIGHT=500>
</APPLET>
</BODY>
</HTML>
选项
答案
init addKeyListener
解析
本题考查知识点:小应用程序概念、Applet执行过程、JavaApplication和Applet。解题思路:Applet运行时,首先由浏览器调用init方法,该方法通知Applet已被加载,在这个方法中通常进行一些基本的初始化过程。Applet的基本方法还有start()、stop()、destroy()。类Example2_8实现了“KeyListener”监听器接口,就可以通过该监听器的方法监听键盘事件。需要填空的方法是初始化Applet程序,keyPressed()方法中专门处理方向键的事件。按下方向键以后,就会调用Label的setLocation()方法重新设置“out”所在的位置。当用户按下“移动”按钮以后,AddMoveListener为“移动按钮”添加了针对键盘的监听器。当用户按下“停止移动”按钮以后,RemoveListener从“移动”按钮中移出针对键盘事件的监听器。
本题中start方法已经实现,另外两个方法分别用于Applet的停止和卸载,所以第一个空只能填“init”,用来为Applet实现初始化。
由于本题是使用键盘来控制Label对象的移动,所以必须添加针对键盘的监听器,这样才能对键盘事’件做出反应,第二个空就是给“button”添加键盘事件监听器。
转载请注明原文地址:https://kaotiyun.com/show/Rcnp777K
本试题收录于:
二级Java题库NCRE全国计算机二级分类
0
二级Java
NCRE全国计算机二级
相关试题推荐
假设在表单设计器环境下,表单中有一个文本框,且已经被选定为当前对象,现在从属性窗口中选择Value属性,然后在设置框中输入“={^2001-9-10}-{^2001-8-20}”,请问以上操作后,文本框Value属性值的数据类型是
下面不属于按钮控件事件的是
在VisualFoxpro中,属于命令按钮属性的是
为Employee表增加一个字段“出生日期”,正确的SQL语句是
SQL语句中修改表结构的命令是
在VisualFoxPro中,下列关于SQL表定义语句(CREATETABLE)的说法中错误的是
插入一条记录到表结构为(职工号,姓名,工资)的表Employee中,正确的SQL命令是
下列选项中不属于结构化程序设计原则的是
结构化程序所要求的基本结构不包括
随机试题
美国战略学家安索夫曾根据变化的速度和深度将环境的风险度划分为五类,其中,环境容易急速质变的企业类型是【】
固定痛的临床意义是()
29岁妇女原发不孕5年,进行性痛经。妇科检查:子宫大小正常,后位,活动差,后壁可触及2个黄豆粒大小痛性结节,左侧附件区可触及3cm大小的囊性包块,不活动,有触痛,右附件区增厚。
甲公司与乙公司签订代销机器设备的合同。合同约定,乙公司代理销售甲公司生产的设备,每台8000元。甲公司除按季度支付给乙公司一定的报酬之外,还将根据该设备的销售量给予乙公司一定比例的提成。则下列说法中正确的是:()
假设ABC会计师事务所于2013年12月1日开始接受委托,已经连续5年对甲公司财务报表进行了审计,双方约定2018年3月18日对2017年度的财务报表出具审计报告并且决定在2018年9月15日后双方终止一切业务关系。ABC会计师事务所在审计甲公司财务报表时
“全光通信”是一种无须进行任何光电变换的全新光波通信。在全光通信系统中,图像和话音信息直接变换为光信号,并在传输媒体中传输。在摄像光学系统、光纤系统和接收光放大系统组成的全光通信系统中,由于不要求光电变换,所以没有任何电子元件,信号失真小,能够在100℃以
一根绳子在一圆柱上从一端到另一端刚好均匀绕了4圈,圆柱底面周长为4米,圆柱高为12米,则绳子长为?
ThestaggeringvarietyoffreestuffavailableontheInternetsometimesseemstohaverepealedthefirstlawofeconomics:Ther
Playistheprincipalbusinessofchildhood,andmoreandmoreinrecentyearsresearchhasshownthegreatimportanceofplayi
Spendingtimeinabookshop______.Accordingtotheauthor,filebestwaytoescapetherealitiesofeverydaylifeis______.
最新回复
(
0
)