问题 问答题

下面是一个Applet程序,其功能是建立两个文本区域,一个为编辑区,一个为只读区;建立两个按钮,一个实现将编辑区中被鼠标选定的文本内容复制到只读区中,一个实现将只读区的全部文本内容清空。请改正程序中的错误(有下划线的语句),使程序能输出正确的结果。 注意:不改动程序的结构,不得增行或删行。 源程序文件代码清单如下: import java.awt.*; import java.applet.*; /* <applet code="ex14_3.class" width=800 height=400> </applet> */ public class ex14_3 extends Applet { private Button okBtn, clearBtn; private String strMessage; private TextArea tArea1, tArea2; public void init() { strMessage = "Hello! Welcome to the test! \n" + "This is the NCR Examination! \n" + "Wish you good luck!"; tArea1 = new TextArea( 10, 25 );tArea1.setText(strMessage); tArea2 = new TextArea( 10, 25 ); tArea2.setEditable( true ); 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 ) tArea1.setText(tArea2.getSelectedText() ); else if( e.target == clearBtn ) tArea1.setText( " "); return true; } } ex14_3.html <HTML> <HEAD> <TITLE>ex14_3</TITLE> </HEAD> <BODY> <applet code="ex14_3.class" width=800 height=400> </applet> </BODY></HTML>

答案

参考答案:

解析:tArea2.setEditable(false)tArea2.setText(tArea1.getSelectedTex t())tArea2.setText(" ") 本题主要考查Applet窗口、其事件处理机制以及对文本区域的相关操作。解题关键是熟悉TextArea的基本方法,如setEditable()方法就是用来确定编辑模式的一个重要的方法,并且需要明确题目要求的两个文本区域的区别和联系,根据不同的事件,来对这两个文本区域进行操作。本题中,第1个空,将第2个文本区域tArea2的编辑模式设定为只读,注意参数为false,因为默认的编辑模式设定为可编辑的,用true表示,所以参数应该是false:第2个空,响应单击Copy按钮事件的语句应该将第1个文本区tAreal的被选择的文本内容取出放入第2个文本区tArea2中;第3个空,响应单击Clear按钮事件的语句应该将第2个文本区tArea2中的所有文本内容清空。

单项选择题
多项选择题