Java文本框和文本区.ppt

上传人:牧羊曲112 文档编号:6509860 上传时间:2023-11-07 格式:PPT 页数:12 大小:204.49KB
返回 下载 相关 举报
Java文本框和文本区.ppt_第1页
第1页 / 共12页
Java文本框和文本区.ppt_第2页
第2页 / 共12页
Java文本框和文本区.ppt_第3页
第3页 / 共12页
Java文本框和文本区.ppt_第4页
第4页 / 共12页
Java文本框和文本区.ppt_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《Java文本框和文本区.ppt》由会员分享,可在线阅读,更多相关《Java文本框和文本区.ppt(12页珍藏版)》请在三一办公上搜索。

1、第9章 文本框和文本区,在第6章介绍了组件和容器的概念,第7章介绍了Java Applet的基本概念。我们已经知道,Java Applet本身也是一个容器(准确地说,Java Applet的主类的实例是一个容器),因此Java Applet可以添加交互组件,如文本框、文本区、按钮、滚动列表等。本章学习文本框和文本区。91 文本框 文本框可以输入单行的文本,你肯定对它不陌生。java.awt包中的TextField类是专门用来建立文本框的,即TextField创建的一个对象就是一个文本框。TextField类有下列主要方法:(1)TextField()如果使用这个构造方法创建文本框对象,则文本框

2、的长度为一个字符长,可以在文本框中输入若干个字符。(2)TextField(int x)如果使用这个构造方法创建文本框对象,则文本框的长度为x个字符长,可以在文本框中输入若干个字符。(3)TextField(String s)如果使用这个构造方法创建文本框对象,则文本框的初始字符串为s,可以在文本框中输入若干个字符。(4)TextField(String s,int x)如果使用这个构造方法为s,文本框的长为x,可以在文本框中输入若干个字符。(5)public void setText(String s)文本框对象调用该方法可以设置文本框中的文本为参数s指定的文本,文本框中先前的文本将被清除。

3、(6)public String getText()文本框对象调用该方法可以获取文本框中的文本。,(7)public void setEchoChar(char c)文本框对象调用该方法可以设置文本框的回显字符,这样当用户在文本框中进行文字输入时,在文本框中只显示参数c指定的字符。(8)public void setEditable(boolean b)文本框对象调用该方法可以指定文本框的可编辑性。创建的文本框默认为可编辑的。(9)public void addActionListener(ActionListener)文本框对象调用该方法可以向文本框增加动作监视器(将监视器注册到文本框)。(

4、10)public void removeActionListener(ActionListener)文本框对象调用该方法可以移去文本框上的动作监视器。下面的例子text1.java中有3个文本框。,92 文本框上的ActionEvent事件,当用户在文本框中键入文本后,按回车键、单击按钮、在一个下拉式列表表中选择一个条目等操作时,都发生界面事件。程序有时需对发生的事件作出反应,宋实现特定的任务,例如,用户单击一个名字叫“确定”或“取消”的按钮,程序可能将作出不同的处理。在学习处理事件时,必须很好地掌握事件源、监视器、处理事件的接口这三个概念。在这一节,通过处理文本框这个具体的组件上的事件,来

5、掌握处理事件的基本原理。1事件源 能够产生事件的对象都可以成为事件源,如文本框、按钮、下拉式列表等。也就是说,事件源必须是一个对象,而且这个对象必须是Java认为能够发生事件的对象。2监视器 我们需要一个对象对事件源进行监视,以便对发生的事件作出处理。事件源通过调用 相应的方法将某个对象作为自己的监视器。例如,对于文本框,这个方法是:addActionListener(监视器)对于获取了监视器的文本框对象,在文本框获得输入焦点之后,如果用户按回车键,Java运行系统就自动用ActionEvent类创建了一个对象,即发生了ActionEvent事件。也就是说,事件源获得监视器之后,相应的操作就会

6、导致事件的发生,并通知监视器,监视器就会作出相应的处理。,3处理事件的接口 Java规定:为了让监视器这个对象能对事件源发生的事件进行处理,创建该监视器对象的类必须声明实现相应的接口,即必须在类体中给出该接口中所有方法的方法体,那么当事件源发生事件时,监视器就自动调用执行被类实现的某个接口方法。包中提供了许多事件类和处理各种事件的接口。对于文本框这个接口的名字是ActionListener,这个接口中只有一个方法:public void actionPerformed(ActionEvent e)当在文本框中输入字符并回车时,包中的ActionEvent类自动创建了一个事件对象,并将它传递给方

7、法actionPerformed(ActionEvent e)中的参数e,监视器将自动调用方法:actionPerformed(ActinEvent e)对发生的事件作出处理。所以,我们称文本框这个事件源可以发生ActionEvent类型事件。为了能监视到这种类型的事件,事件源必须使用addActionListener方法获得监视器;创建监视器的类必须实现接口ActionListener。现在,我们将文本框对象上的事件处理总结如下:(1)对于文本框事件源,可以发生ActionEvent事件文本框获得监视器之后,在文本框获得输入焦点之后按回车,包中的ActionEvent类自动创建了一个事件对象

8、。(2)文本框获得监视器发生ActionEvent事件的事件源获得监视器的方法是:addActionListener(监视器)由于文本框可以发生ActionEvent事件,所以TextField类提供了addActionListener方法。,(3)处理事件的接口处理发生ActionEvent事件的接口是ActionListener,该接口中只有一个的方法:actionPerformer(ActinEvent e)文本框可以发生ActionEvent事件,因此,创建文本框的监视器的类必须要实现ActionListener接口。当在文本框中回车时,包中的ActionEvent类自动创建了一个事件

9、对象,这个对象将自动传递给方法actionPerformed(ActionEvent e)中的参数e,监视器将自动调用方法actionPerformed(ActinEventxe)对发生的事件作出处理。(4)ActionEvent类中的方法public Object getSource()ActionEvent对象调用方法getSource()可以获取发生ActionEvent事件的事件源对象的引用。public String getActionCommand()ActionEvent对象调用该方法可以获取发生ActionEvent事件时,和该事件相关的一个命令字符串,对于文本框,当发生Act

10、ionEvent事件时,文本框中的文本字符串就是和该事件相关的一个命令字符串。Java事件处理就是基于这种授权模式,即发生相应事件的事件源对象,比如sourceObicet,通过调用相应的方法 sourceObjcetaddXXXListener(监视器);将某个对象作为自己的监视器。创建监视器对象的类必须实现相应的事件接口:XXXListener 当事件源发生事件时,监视器将调用接口中相应的方法作出处理。事件的处理过程如图:,事件源.addXXXListener(监视器),发生XXX事件,java.awt.event包中的XXXEvent类产生一个对象e,class A implements

11、 XXXListener,接口方法(XXX e),类A负责创建监视器,A必须实现XXX接口,例子textevent.java中 textl.addActionListener(this);这句话是为text1添加动作监视器,这个this就是动作监视器了,因为这条语句写在init()方法中所以this代表的是当前这个类中的实例化对象,也就是我们看到的Applet容器例子text3.java中在第一个文本框中输入数字,文本框2,3之中分别显示他的平方和立方注:如果用户没有在文本框中输入任何字符,文本框调用getText方法将返回一个长度为0的字符串,即不含有任何字符的字符串:。可以通过getTex

12、t方法返回的字符串的长度来判断用户是否输入了字符。,93 文本区,文本区框可以输入多行的文本,你肯定对它不陌生。javaawt包中的类TextArea类是专门用来建立文本区的,即TextArea创建的一个对象称做一个文本区。TextArea类中有下列主要方法:(1)TextArea()如果使用这个构造方法创建文本区对象,则文本区的列数和行数取默认值。文本区有水平和垂直滚动条。(2)TextArea(String s)如果使用这个构造方法创建文本区对象,则文本区的初始字符串为s。文本区有水平和垂直滚动条。(3)TextArea(int x,int y)如果使用这个构造方法创建文本区对象,则文本区

13、行数为x,列数为y。文本区有水平和垂直滚动条。(4)TextArea(String s,int x,int y)如果使用这个构造方法创建文本区对象,则文本区的初始字符串为s,文本框行数为x,列数为y。文本区有水平和垂直滚动条。(5)TextArea(String s,int x,int y,int scrollbar)如果使用这个构造方法创建文本区对象,则文本区的初始字符串为s,文本框行数为x,列数为y。scrollbar取值:TextArea.SCROLLBARS_BOTH/水平和垂直都有TextArea.SCROLLBARS_VERTICAL_ONLY/只有垂直的TextArea.SCRO

14、LLBARS_HORIZONTAL_ONLY/只有水平的TextArea.SCROLLBARS_NONE/没有滚动条 控制文本区滚动条的显示状态。,(6)public void setText(String s)文本区对象调用该方法可以将文本区中的文本设置为参数s指定的文本,文本区中先前的文本将被清除。(7)public String getText()文本区对象调用该方法可以获取文本区中的文本。(8)public void setEditable(boolean b)文本区对象调用该方法可以指定文本区的可编辑性。文本区默认是为可编辑的。(9)public boolean isEditable

15、()文本区对象调用该方法可以获取文本区是否是可编辑的,当文本区是可编辑时,该方法返回true,否则返回false。(10)public void insert(String s,int x)文本区对象调用该方法可以在指定位置x处,插入指定文本s。x是指距文本区开始处字符的个数,x不能大于文本区中字符的个数。(11)public void replaceRange(String s,int start,int end)文本区对象调用该方法可以用给定新文本s替换从指定位置start开始到指定位置end结束的文本,start和end不能大于文本区中字符的个数。(12)public void appe

16、nd(String s)文本区对象调用该方法可以在文本区中尾加文本。(13)int getCaretPosition()文本区对象调用该方法可以获取文本区中输入光标的位置。(14)public void setCaretPosition(int position)文本区对象调用该方法可以设置文本区中输入光标的位置,其中position不能大于文本区中字符的个数。(15)String getSelectedText()文本区对象调用该方法可以获取文本区中选中的文本,例如,通过拖动鼠标选中的文本。,(16)public int getSelectionStart()文本区对象调用该方法可以获取被选

17、中的文本的开始位置。(17)public int getSelectionEnd()文本区对象调用该方法可以获取被选中的文本的结束位置。(18)public void setSelectionStart(int n)文本区对象调用该方法可以设置文本区中被选中的文本的开始位置,其中n不能大于文本区中字符的个数。(19)public void setSelectionEnd(int n)文本区对象调用该方法可以设置文本区中被选中的文本的结束位置,其中n不能大于文本区中字符的个数。(20)public void selectAll()文本区对象调用该方法选中文本区的全部文本。(21)addTextL

18、istener(TextListener)文本区对象调用该方法可以向文本区增加文本监视器。(22)removeTextListener(TextListener)文本框对象调用该方法可以移去文本区上的文本监视器。例子area1.java中演示了,几个方法的应用以及如何把文本区加入到容器之中。,94 文本区上的TextEvent事件,文本区可以发生TextEvent事件。当文本区中的内容发生变化时,例如键入字符、删除字符时,都会导致文本区中的内容发生变化,这时,TextEvent类将自动创建一个事件对象。现在,我们将文本区对象上的事件处理总结如下:1TextEvent事件 对于文本区事件源,可以

19、发生TextEvent事件。当文本区获得监视器之后,在文本区域中改变文本的内容,如键入字符、删除字符时,TextEvent类将自动创建一个事件对象。2文本区获得监视器 发生TextEvent事件的事件源获得监视器的方法是addTextListener(监视器)。由于文本区可以发生TextEvent事件,所以TextArea类提供了addTextListener方法。3处理事件的接口 处理发生TextEvent事件的接口是TextListener,该接口中只有一个方法:textValueChanged(TextEvent e)4TextEvent类中的方法 public Object getSo

20、urce()获取发生TextEvent事件的事件源对象的引用。在下面的例子area2.java中,有两个文本区。当我们在一个文本区中输入若干英文单词时(用空格、逗号或回车作为单词之间的分隔符),另一个文本区同时对你输入的英文单词按字典序排序,也就是说随着你输入的变化,另一个文本区不断地更新排序。,习题,1编写有两个文本区的小应用程序。当我们在一个文本区中输入若干个数时,另一个文本区同时对你输入的数进行求和运算并求出平均值,也就是说随着你输入的变化,另一个文本区不断地更新求和及平均值。2文本区可以使用getSelectedText()方法获取该文本区通过拖动鼠标选中的文本。上机练习习题4,要求在textl中输入一篇英文短文,然后用鼠标把英文短文中的动词选出来放入另一个文本区。,

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号