问答题 下面是一个Applet程序,其功能是建立两个文本区域,一个为编辑区,一个为只读区;建立两个按钮,一个实现将编辑区中被鼠标选定的文本内容复制到只读区中,一个实现将只读区的全部文本内容清空。请更正题中带下划线的部分。 注意:不改变程序的结构,不得增行或删行。 import java.awt.*; import java.applet.*; /* <applet code="exl4_3.class" width=800 height=400> </applet> */ public class exl4_3 extends Applet { private Button okBtn, clearBtn; private String strMessage; private TextArea tArea1, tArea2; public void init() { strMessage="Hello! Welcome to the test! /n" +"Wish you good luck!"; tArea1=new TextArea(10,25); tArea1.setText(strMessage); tArea2=new TextArea(10,25); {{U}}tArea2.setEditable(true){{/U}}; okBtn=new Button("Copy"); clearBtn=new Button("Clear"); add(tArea1); add(tArea2); add(okBtn); add(clearBtn); } public boolean action(Event e,Object o) { if(e.target= =okBtn) {{U}}tArea1.setText(tArea2.getSelectedText()){{/U}}; else if(e.target= =clearBtn) {{U}}tArea1.setText(""){{/U}}; return ture; } } exl4_3.html <HTML> <HEAD> <TITLE>exl4_3</TITLE> </HEAD> <BODY> <applet code="exl4_3.class"width=800 height=400> </applet> </BODY> </HTML>
【正确答案】
【答案解析】tArea2.setEditable(false) tArea2.setText(tArea1.getSelectedText()) tArea2.setText("") [讲解] 本题主要考查Applet窗口、其事件处理机制以及对文本区域的相关操作。解题关键是熟悉TextArea的基本方法,如setEditable()方法就是用来确定编辑模式的一个重要的方法,并且需要明确题目要求的两个文本区域的区别和联系,根据不同的事件,来对这两个文本区域进行操作。本题中,第1个空,将第2个文本区域tArea2的编辑模式设定为只读,注意参数为false,因为默认的编辑模式设定为可编辑的,用true表示,所以参数应该是false;第2个空,响应单击Copy按钮事件的语句应该将第1个丈本区tArea1的被选择的文本内容取出放入第2个文本区tArea2中;第3个空,响应单击Clear按钮事件的语句应该将第2个文本区tArea2中的所有文本内容清空。