温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Java中怎么实现一个事件窃听器

发布时间:2021-07-01 16:27:36 来源:亿速云 阅读:156 作者:Leah 栏目:编程语言

这篇文章将为大家详细讲解有关Java中怎么实现一个事件窃听器,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。

在编写JSF应用时,集成应用逻辑其实是对那些产生监听器能懂得的事件的组件分配适当的监听器。而不必考虑请求和响应。JSF支持用类似于面向接口的方式开发事件监听器,以及将任意方法注册为事件监听器的能力(只要它具有正确的方法签名)。

共有4种标准事件:值改变事件、动作事件、数据模型事件以及阶段事件。值改变事件是在用户修改组件的值后,由输入控件触发。动作事件在用户激活命令组件(比如按钮)时产生。数据模型事件在数据感知组件选择了一行要处理的数据时产生。阶段事件则在JSF处理HTTP请求时产生。

这些仅仅是框架所定义的标准事件,这并没有限制使用其他类型的事件。第三方或者你自己,都可以容易地支持不同类型的事件。

值改变事件是当用户在输入组件中输入新值时产生的。可以使用值改变事件监听器来处理值。

简单的值变事件代码

  1. <%@ page language="java" pageEncoding="GB18030"%>    

  2. <%@ taglib uri="http://java.sun.com/jsf/html" prefix="h"%>    

  3. <%@ taglib uri="http://java.sun.com/jsf/core" prefix="f"%>    

  4. <html>    

  5.     <body>    

  6.         <f:view>    

  7.             <h:form>    

  8.                 <h:inputText valueChangeListener="#{myform.valueChangeProcess}" />    

  9.                 <h:commandButton binding="#{myform.changeB}" rendered="false" value=" 提 交 " />    

  10.             </h:form>    

  11.         </f:view>    

  12.     </body>    

  13. </html>   

Java代码

  1. package djob2008;    

  2.     

  3. import javax.faces.component.UIComponent;    

  4. import javax.faces.component.html.HtmlInputText;    

  5. import javax.faces.event.ValueChangeEvent;    

  6.     

  7. /**   

  8.  * @author    

  9.  * @time Jun 24, 20098:24:24 PM   

  10.  */    

  11. public class Myform {    

  12.  public  UIComponent changeB;    

  13.  public void valueChangeProcess(ValueChangeEvent event){    

  14.      HtmlInputText sender=(HtmlInputText)event.getComponent();    

  •      sender.setReadonly(true);    

  •     changeB.setRendered(true);    

  •  }    

  • public UIComponent getChangeB() {    

  •     return changeB;    

  •     

  • public void setChangeB(UIComponent changeB) {    

  •     this.changeB = changeB;    

  • }    

  •     

  • }  

关于Java中怎么实现一个事件窃听器就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI