了解Eclipse中的JFace数据绑定,第1部分: 数据绑定的优缺点 - 编程入门网
vax.swing.*;
import java.awt.event.ActionEvent;
public class BindingExample {
private JFrame frame;
private FormBean bean;
public BindingExample() {
frame = new JFrame();
bean = new FormBean();
BeanAdapter adapter = new BeanAdapter(bean);
JTextField firstField = BasicComponentFactory.createTextField(
adapter.getValueModel("first"));
JTextField lastField = BasicComponentFactory.createTextField(
adapter.getValueModel("last"));
JTextArea descriptionArea = BasicComponentFactory.createTextArea(
adapter.getValueModel("description"));
DefaultFormBuilder builder =
new DefaultFormBuilder(new FormLayout("r:p, 2dlu, f:p:g"));
builder.append("First:", firstField);
builder.append("Last:", lastField);
builder.appendRelatedComponentsGapRow();
builder.appendRow("p");
builder.add(new JLabel("Description:"),
new CellConstraints(1, 5,
CellConstraints.RIGHT,
CellConstraints.TOP),
new JScrollPane(descriptionArea),
new CellConstraints(3, 5,
CellConstraints.FILL,
CellConstraints.FILL));
builder.nextRow(2);
builder.append(new JButton(new MessageAction()));
frame.add(builder.getPanel());
frame.setSize(300, 300);
}
public JFrame getFrame() {
return frame;
}
public class FormBean {
//Same as above
}
private class MessageAction extends AbstractAction {
public MessageAction() {
super("Message");
}
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null, "First name is " + bean.getFirst());
}
}
public static void main(String[] args) {
BindingExample example = new BindingExample();
example.getFrame().show();
}
}
了解Eclipse中的JFace数据绑定,第1部分: 数据绑定的优缺点(3)时间:2011-02-11 IBM Scott Delap我会在后面介绍详细的实现方法。现在,请注意那些在与第一个示例对比时所没有的内容: 没必要仅因为要同步而公开对组件的引用。这些引用不会被传播到构建程序范围之外。 未提供任何一种同步方法。 构建程序中没有初始同步过程用于填充组件。 显示对话框之前没有同步操作。 不管所有这些条目现在都已丢失的事实,此示例将完全执行与第一个示例相同的操作。 JGoodies 数据绑定实现细节 介绍整个 JGoodies 数据绑定框架不在本文讨论范围内。但是,看一看 清单 2 所示的示例的实现细节十分有用。下面的两行揭示了所有奥秘:
第一行用于创建一个 JGoodies 对象 |
凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢! |