下面是一个Applet程序,程序的功能是用鼠标画图。本题是通过单击鼠标后画出一个Java字。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意;不改动程序的结构,不得增行或减行。 源程序文件代码清单如下; import

admin2009-01-15  34

问题 下面是一个Applet程序,程序的功能是用鼠标画图。本题是通过单击鼠标后画出一个Java字。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。
   注意;不改动程序的结构,不得增行或减行。
   源程序文件代码清单如下;
   import java.awt.*;
   import java.awt.event.*;
   import java.applet.*;
    /*
    <applet code=SimpleHitMouse.java width=800 height=400>
   </applet>
   */
   public class SimpleHitMouse implements Applet
   {
   private java.util.Vector points=new java.util.Vector();
   public void init()
   {
       addMouseListener(new MouseAdapter()
       {
           public void mousePressed(MouseEvent e)
           {
                   points.add(new Point(e.getX(),e.getY())
               paint();
           }
     }
     public void update(Graphics g)
       repaint(g);
     }
       public void paint(Graphics g)
    {
           for(int i=0;i<points.size();i++)
       {
           Point dot=(Point)points.elementAt(i);
           g.drawString("x",dot.x,dot.y);
           }
   }
   public static void main(String args[ ])
   {
       Frame fram=new Frame("CelayTree");
       SimpleHitMouse dot=new SimpleHitMouse();
           dot.init ();
           dot.start ();
       fram.add ( "Center", dot );
       fram.setSize( 400,300 );
       fram.addWindowListener( new WindowAdapter(){
           public void windowClosing( WindowEvent e )
               {
               System.exit(0);
           }
       });
           fram.show ();
   }
   }
   ex12_3.html:
       <html>
       <head>
       <title>A Simple Program</title>
       </head>
       <body>
      <applet code=" SimpleHitMouse.class" width=800 height=400>
     </applet>
   </body>
   </html>

选项

答案extends repaint() paint(g)

解析 本题主要考查Java Applet程序的编写、Java程序事件处理机制。解答本题的关键是熟练掌握Java Applet程序的编写和 Java程序事件处理机制的知识。编写Applet小程序必须要用到java.appelt包中的Applet类java.applet.Applet,java.awt.Panel的子类。在Applet中,Applet的显示更新是由一个专门的AWT线程控制的。与Applet显示相关的3个方法:④paint()方法,Applet的paint()方法具体执行Applet的绘制,该方法的定义为public void paint(Graphics g),参数g是 Graphics类的实例,该实例对象由浏览器生成,它包含了Applet的图形上下文信息,通过它向Applet中显示信息,该对象相当于 Applet的画笔:②update()方法,该方法的定义为public void update(Graphics g),update()方法用于更新Applet的显示,该方法将首先清除背景,再调用paint()方法完成Applet的具体绘制;③repain()方法,repaint()方法的定义为public void repaint(),该方法主要用于 Applet的重新显示,它调用update()方法实现对Applet的更新。在本题中,extends关键字用于继承父类,repaint()、paint()方法都用于Applet的重新显示。程序的运行结果如下。
转载请注明原文地址:https://kaotiyun.com/show/AFnp777K
0

最新回复(0)