Как динамически обновлять нижний колонтитул таблицы ячеек

Я пытаюсь добавить нижний колонтитул в celltable и не могу динамически изменить нижний колонтитул celltable, но я могу добавить его при создании столбцов, как показано ниже

cellTable.addColumn(qty, "Qty",Integer.toString(totalQty)); 

Это не я ищу, есть ли способ динамически установить нижний колонтитул для таблицы ячеек. Любая помощь?

1 ответ

Решение

Вам необходимо реализовать собственный заголовок и добавить его в столбец, который должен содержать этот нижний колонтитул. Например:

public class QuantityFooter extends Header<Number> {

    private final Number totalQty;

    public QuantityFooter(Number totalQty) {
        super(new NumberCell());
        this.totalQty = totalQty;
    }

    public void setQuantity(Number totalQty) {
        this.totalQty = totalQty;
    }

    @Override
    public Number getValue() {
        return totalQty;
    }
}

Затем добавьте его в столбец:

QuantityFooter quantityFooter = new QuantityFooter(0);
cellTable.addColumn(qty, new TextHeader("Qty"),quantityFooter ); 

Когда вам нужно обновить нижний колонтитул, вы просто позвоните quantityFooter.setQuantity(10) и вам, вероятно, нужно перерисовать колонтитулы с redrawHeader() а также redrawFooters()

Другие вопросы по тегам