学习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.     
  5.         
  6.             
  7.                 
  8.                  valueChangeListener="#{myform.valueChangeProcess}" />    
  9.                  binding="#{myform.changeB}" rendered="false" value=" 提 交 " />    
  10.                 
  11.             
  12.         
  13.   

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();    
  15.      sender.setReadonly(true);    
  16.     changeB.setRendered(true);    
  17.  }    
  18. public UIComponent getChangeB() {    
  19.     return changeB;    
  20.     
  21. public void setChangeB(UIComponent changeB) {    
  22.     this.changeB = changeB;    
  23. }    
  24.     

网页名称:学习Java-事件窃听器
标题URL:http://www.shufengxianlan.com/qtweb/news34/332434.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联