[问答题] 下面是一个Applet程序,设置其宽高为300和300像素,程序的功能是在小程序界面画一根水平线和一根垂直线,将小程序界面均分为4个区域,鼠标在不同的区域移动时显示不同的几何图形。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 程序运行结果如下: ![[问答题] 下面是一个Applet程序,设置其宽高为300和300像素,程序的功能是在小程序界面画一根水平线和一根垂直线,将小程序界面均分为4个区域,鼠标在不同的区域移动时显示不同的几何图形。请改正程 [问答题] 下面是一个Applet程序,设置其宽高为300和300像素,程序的功能是在小程序界面画一根水平线和一根垂直线,将小程序界面均分为4个区域,鼠标在不同的区域移动时显示不同的几何图形。请改正程](/uploadfile/member/20180926/1537955152.jpg)
import java.awt.*; import java.awt.Graphics.*; import java.awt.event.*; public class AppletPrograming extends Applet{ int m=-1,n=-1; public void init() { addMouseMotionListener(new MouseMotionAdapter(){ public void mouseMoved(Mouse p) { m=e.getX(); n=e.getY ( ); } repaint ( ) { }}); } public void paint(Graphics g) { g.drawLine(100,0,100,200); g.drawLine(0,100,200,100); if(m<100&&n<100) {g.setColor(Color.black);g.fillOval(10,10,80,80); } else if(m>100&&n<100) {g.setColor(Color.green);g.fillRect(110,10,80,80); } else if(m<100&&n>100){ g.setColor(Color.blue); g.fillArc(10,130,80,35,50,250);} else if(m>10
参考答案:
问题解析:
import java.applet.*; MouseEvent p public void repaint() 本题主要考查Applet小程序的应用,Java程序的事件处理机制,事件适配器的用法及与Applet显示有关的方法。解答本题的关键是熟练掌握Applet小程序的应用,Java程序的事件处理机制及与Applet显示有关的概念。Java语言为一些Listener接口提供了适配器(Adapter)类。可以通过继承事件所对应的Adapter类,重写需要的方法,无关方法不用实现。事件适配器提供了一种简单的实现监听器的手段,可以缩短程序代码。另外,在写Applet时,我们必须导入java.applet包,在小程序界面上画图时(尤其写字符时),通常重写paint()方法。

![[问答题] 下面是一个Applet程序,设置其宽高为300和300像素,程序的功能是在小程序界面画一根水平线和一根垂直线,将小程序界面均分为4个区域,鼠标在不同的区域移动时显示不同的几何图形。请改正程 [问答题] 下面是一个Applet程序,设置其宽高为300和300像素,程序的功能是在小程序界面画一根水平线和一根垂直线,将小程序界面均分为4个区域,鼠标在不同的区域移动时显示不同的几何图形。请改正程](http://www.mshxw.com/aiimages/31/251938.png)
