GWT Celltable Как сделать нередактируемую ячейку в столбце Editable - PullRequest
1 голос
/ 31 октября 2011

Я добавил EditTextCell (stringTestEditTextCell) в столбец (testColumn).

EditTextCell editTextCell = new EditTextCell (); Столбец stringColumn = new Column ( editTextCell) { @Override public String getValue (объект Record) {

            return object.getValue();
        }
    };

Все ячейки в testColumn доступны для редактирования.

Я хочу, чтобы 1-я ячейка столбца была такой, чтобы 1-я ячейка столбца была недоступна для редактирования.

Ответы [ 2 ]

1 голос
/ 04 ноября 2011

Следующий урок - ответ на мой вопрос.Я решил это и работает отлично.Но получаю ошибку, когда пользователь нажимает на 1-ю ячейку столбца.

class CustomEditTextCell extends EditTextCell{
    @Override
    public void render(com.google.gwt.cell.client.Cell.Context context,
            String value, SafeHtmlBuilder sb) {
        // context.getColumn()==2 indicate Record ID column and context.getIndex()==0 indicate non editable cell in 1st empty row
        if(context.getColumn()==2 &&    ( context.getIndex()==0  || context.getIndex()%10 == 0)){
            sb.appendHtmlConstant("<div contentEditable='false' unselectable='true'></div>");
        }else{
        super.render(context, value, sb);
        }

    }
}
0 голосов
/ 02 ноября 2011

Вы можете расширить EditTextCell и переопределить edit () - Метод , чтобы он редактировал только тогда, когда вы не установили логический флаг, который вам нужно установить для первой ячейки.

...