如何在lwuit中创建动态表
TableModel model = new DefaultTableModel(
new String[]{"A", "B", "Call Avg"},
new Object[][]{
{"0", "50", "0.00"},
{"0", " " + "2", "0.00"},
{"0", "52", "0.00"},})
{
public boolean isCellEditable(int row, int col) {
return col != 0 ;
}
};
Table table = new Table(model);
这是静态的。我想动态创建行数和列数.Plz帮助
答案 0 :(得分:7)
请参阅此示例代码。我使用此代码使用LWUIT创建了动态表。
Form form = new Form();
form.setLayout(new BorderLayout());
ValueBeans[] valueBeans = new ValueBeans[size];
// Here you can use Bean array value. This array contains collection of bean class.
// You can get the values from this beans class.
// You need to create dynamically with your own staff
Object[][] arrObj = new Object[valueBeans.length, 3];
TableModel model = new DefaultTableModel(new String[]{"Column 1", "Column 2", "Column 3"}, arrObj) {
public boolean isCellEditable(int row, int col) {
return false; // return true if editable cell
}
};
for (int index = 0; index < rowValues.size(); index++) {
model.setValueAt(index, 0, valueBeans[index].getValue1()); // row , column , value
model.setValueAt(index, 1, valueBeans[index].getValue2());
model.setValueAt(index, 2, valueBeans[index].getValue3());
}
Table table = new Table(model) {
protected Component createCell(Object value, final int row, final int column, boolean editable) {
final Component c = super.createCell(value, row, column, editable);
c.setFocusable(false);
return c;
}
};
table.setScrollable(false);
form.addComponent(BorderLayout.CENTER, table);