将按钮添加到vaadin JPA容器表
我需要为表格的每一行添加按钮。表的容器数据源是JPA容器。怎么做?我成功地为数据源不是JPA容器的表添加了按钮。我就是这么做的:将按钮添加到vaadin JPA容器表,vaadin,Vaadin,我需要为表格的每一行添加按钮。表的容器数据源是JPA容器。怎么做?我成功地为数据源不是JPA容器的表添加了按钮。我就是这么做的: testable.addContainerProperty("button", Button.class, null); Button btt = new Button("test"); Item newrow = testable.addItem("first"); newrow.getItemProperty("button").setValue(btt); 但
testable.addContainerProperty("button", Button.class, null);
Button btt = new Button("test");
Item newrow = testable.addItem("first");
newrow.getItemProperty("button").setValue(btt);
但是如果我声明可测试的数据源:testable.setContainerDataSourcejpa_test;
它不起作用。有人能帮我吗?首先,创建示例类:
public class ExampleBean {
private Integer id;
private Button button;
public ExampleBean() {
button = new Button("Test") {
{
addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// code here
}
});
}
}
}
public void setId(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
public void setButton(Button button) {
this.id = id;
}
public Button getButton() {
return button;
}
// ToString, Equals and/or HashCode methods if necessary
}
第二,创建容器:
private BeanItemContainer<ExampleBean> exampleBeanItemContainer = new BeanItemContainer<ExampleBean>(ExampleBean.class);
最后,设置表格标题和表格标题可见性:
table.setVisibleColumns(new Object[] { "id", "button" });
table.setColumnHeaders(new String[] { "ID", "Button" });
首先,创建示例类:
public class ExampleBean {
private Integer id;
private Button button;
public ExampleBean() {
button = new Button("Test") {
{
addClickListener(new ClickListener() {
@Override
public void buttonClick(ClickEvent event) {
// code here
}
});
}
}
}
public void setId(Integer id) {
this.id = id;
}
public Integer getId() {
return id;
}
public void setButton(Button button) {
this.id = id;
}
public Button getButton() {
return button;
}
// ToString, Equals and/or HashCode methods if necessary
}
第二,创建容器:
private BeanItemContainer<ExampleBean> exampleBeanItemContainer = new BeanItemContainer<ExampleBean>(ExampleBean.class);
最后,设置表格标题和表格标题可见性:
table.setVisibleColumns(new Object[] { "id", "button" });
table.setColumnHeaders(new String[] { "ID", "Button" });
是否尝试使用addGeneratedColumn?是否尝试使用addGeneratedColumn?JPA容器与BeanItemContainer完全不同JPA容器与BeanItemContainer完全不同