Jgoodies JTable Binding, Качели - PullRequest
       26

Jgoodies JTable Binding, Качели

2 голосов
/ 04 февраля 2012

Может ли кто-нибудь предоставить jgoodies простой пример привязки Jtable, используя swing, взяв Список javabeans, расширяющий класс Jgoodies Model. Я не смог найти простой пример этого.

Заранее спасибо

1 Ответ

3 голосов
/ 16 февраля 2012

Для привязки JTable вам нужно написать TableModel для вашей JTable

Например, у вас есть Java-бин, такой как

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();
    } 
}

}

Надеюсь, это поможет.

...