【发布时间】:2012-04-16 10:30:52
【问题描述】:
我正在尝试通过 Vaadin 使用“将表单绑定到数据”与此类创建表单:
public class Job {
private String nom_projet;
private String svn;
private String planning1;
private String planning2;
private String goals;
}
使用 getter 和 setter。
当我尝试这个时一切正常:
final Form form = new Form();
Job bean = new Job();
BeanItem<Job> item = new BeanItem<Job>(bean);
form.setItemDataSource(item);
我尝试添加一个自定义字段,就像“Vaadin 之书”中描述的那样,所以我创建了这个类:
public class MyFieldFactory implements FormFieldFactory {
private static final long serialVersionUID = 1L;
public Field createField(Item item, Object propertyId, Component uiContext) {
Select select = new Select("goals");
select.addItem("compiler:compile");
select.addItem("clean install");
select.addItem("clean");
select.addItem("package");
select.addItem("test");
select.setNewItemsAllowed(true);
return select;
}
}
但是当我想把这个语句添加到MyApplication.java:
form.setFieldFactory(new MyFieldFactory());
我得到了“setFieldFactory”下划线和 3 个选项:
- () 将参数 1 转换为 FieldFactory
- 更改为 setFirldFormFactory(...)
- 让“MyFieldFactory”实现“FieldFactory”
当我点击时:
- 让“MyFieldFactory”实现“FieldFactory”
自定义字段未出现在表单中。
【问题讨论】:
标签: forms data-binding user-interface vaadin