[問(wèn)答題] 下面是一個(gè)Applet程序,程序的功能是用鼠標(biāo)畫(huà)圖。本題是通過(guò)單擊鼠標(biāo)后畫(huà)出一個(gè)Java字。請(qǐng)改正程序中的錯(cuò)誤(有下劃線的語(yǔ)句),使程序能輸出正確的
[問(wèn)答題] 下面是一個(gè)Applet程序,程序的功能是用鼠標(biāo)畫(huà)圖。本題是通過(guò)單擊鼠標(biāo)后畫(huà)出一個(gè)Java字。請(qǐng)改正程序中的錯(cuò)誤(有下劃線的語(yǔ)句),使程序能輸出正確的結(jié)果。
注意;不改動(dòng)程序的結(jié)構(gòu),不得增行或減行。
源程序文件代碼清單如下;
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++)
正確答案:extendsrepaint()paint(g)
參考解析:本題主要考查Java Applet程序的編寫(xiě)、Java程序事件處理機(jī)制。解答本題的關(guān)鍵是熟練掌握J(rèn)ava Applet程序的編寫(xiě)和 Java程序事件處理機(jī)制的知識(shí)。編寫(xiě)Applet小程序必須要用到j(luò)ava.appelt包中的Applet類java.applet.Applet,java.awt.Panel的子類。在Applet中,Applet的顯示更新是由一個(gè)專門(mén)的AWT線程控制的。與Applet顯示相關(guān)的3個(gè)方法:④paint()方法,Applet的paint()方法具體執(zhí)行Applet的繪制,該方法的定義為public void paint(Graphics g),參數(shù)g是 Graphics類的實(shí)例,該實(shí)例對(duì)象由瀏覽器生成,它包含了Applet的圖形上下文信息,通過(guò)它向Applet中顯示信息,該對(duì)象相當(dāng)于 Applet的畫(huà)筆:②update()方法,該方法的定義為public void update(Graphics g),update()方法用于更新Applet的顯示,該方法將首先清除背景,再調(diào)用paint()方法完成Applet的具體繪制;③repain()方法,repaint()方法的定義為public void repaint(),該方法主要用于 Applet的重新顯示,它調(diào)用update()方法實(shí)現(xiàn)對(duì)Applet的更新。在本題中,extends關(guān)鍵字用于繼承父類,repaint()、paint()方法都用于Applet的重新顯示。程序的運(yùn)行結(jié)果如下。 [*]
詞條內(nèi)容僅供參考,如果您需要解決具體問(wèn)題
(尤其在法律、醫(yī)學(xué)等領(lǐng)域),建議您咨詢相關(guān)領(lǐng)域?qū)I(yè)人士。