快速业务通道

了解Eclipse中的JFace数据绑定,第1部分: 数据绑定的优缺点 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-19
   bean.setLast(lastField.getText());     bean.setDescription(descriptionArea.getText());   }   public JFrame getFrame() {     return frame;   }   private class FormBean {     private String first;     private String last;     private String description;     public FormBean() {       this.first = "Scott";       this.last = "Delap";       this.description = "Description";     }     public String getFirst() {       return first;     }     public void setFirst(String first) {       this.first = first;     }     public String getLast() {       return last;     }     public void setLast(String last) {       this.last = last;     }     public String getDescription() {       return description;     }     public void setDescription(String description) {       this.description = description;     }   }   private class MessageAction extends AbstractAction {     public MessageAction() {       super("Message");     }     public void actionPerformed(ActionEvent e) {       syncComponentsToBean();       JOptionPane.showMessageDialog(null, "First name is " + bean.getFirst());     }   }   public static void main(String[] args) {     NoBindingExample example = new NoBindingExample();     example.getFrame().show();   } } 

了解Eclipse中的JFace数据绑定,第1部分: 数据绑定的优缺点(2)

时间:2011-02-11 IBM Scott Delap

救援的数据绑定

此示例只是一个简单示例,如果要计算构建程序中的组件引用指定,还需要有另外 10 行代码。如果向 Bean 中添加新字段,则需要添加另外三行代码进行初始化以及在 GUI 组件和域模型实现双向同步。重复编写这段代码是十分令人厌烦的,经常会导致将错误引入应用程序中。幸运的是,有更好的解决方案可用。

数据绑定框架使开发人员可以轻松地将 JavaBean 属性与 GUI 组件 “粘” 在一起。JavaBean 属性通常被一个字符串引用,该字符串用于告诉数据绑定框架在 JavaBean 上查找相应的 getter 和 setter。例如,"first" 表示在给定 JavaBean 上有 getFirst() 和 setFirst() 方法。组件将被数据自动初始化。当组件中的值发生改变时,关联的 JavaBean 属性也会随之改变。同样地,JavaBean 支持属性更改侦听程序,因此当 GUI 组件的相应 JavaBean 属性发生改变时,也可以更新 GUI 组件。

还可以配置流行的 Java 数据绑定框架何时同步更改 (通常在按下按键时、单击鼠标时或光标丢失时)。这些数据绑定框架还支持各种 GUI 组件,例如文本字段、复选框、列表和表。

清单 2 显示了重新编写 清单 1 中的代码引用以使用 JGoodies 数据绑定框架。

清单 2. 使用 JGoodies 数据绑定的同一个 Swing 对话框

package com.nfjs.examples; import com.jgoodies.forms.layout.FormLayout; import com.jgoodies.forms.layout.CellConstraints; import com.jgoodies.forms.builder.DefaultFormBuilder; import com.jgoodies.binding.beans.BeanAdapter; import com.jgoodies.binding.adapter.BasicComponentFactory; import ja

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号