【发布时间】:2012-02-26 15:30:27
【问题描述】:
谁能提供jgoodies Jtable绑定简单示例,使用swing获取扩展Jgoodies Model类的javabeans列表。我找不到一个简单的例子。
提前致谢
【问题讨论】:
-
通过谷歌搜索“jgoodies jtable binding example”,我发现了这个:java2s.com/Code/Java/Swing-Components/….
谁能提供jgoodies Jtable绑定简单示例,使用swing获取扩展Jgoodies Model类的javabeans列表。我找不到一个简单的例子。
提前致谢
【问题讨论】:
对于JTable绑定,你需要为你的JTable写一个TableModel
例如,您有一个 java bean,例如
public class Employee {
private String employeeName;
private String employeeNumber;
// And the getters and setters for both the variables
}
创建一个表,
List <Employee> myList = new ArrayList<Employee>();
// add few Employee objects to this list and pass it into MyTableModel class
Jtable t1 = new Jtable();
t1.setModel(new MyTableModel(myList));
MyTableModel 类将列表作为参数,它将扩展 com.jgoodies.binding.adapter.AbstractTableAdapter
MyTableModel.java
public class MyTableModel extends AbstractTableAdapter<Employee> {
SelectionInList<Employee> listModel = new SelectionInList<Employee>();
public SourceCodeFolderTableAdapter(SelectionInList<Employee> listModel) {
super(listModel, new String [] {"Employee Name","Employee Number"});
this.listModel = listModel;
}
@Override
public Object getValueAt(int rowIndex, int columnIndex) {
Employee emp = (Employee) getRow(rowIndex);
if (columnIndex == 0) {
return emp.getEmployeeName();
} else if (columnIndex == 1) {
return emp.getEmployeeNumber();
}
}
}
希望这会有所帮助。
【讨论】: