smartGwt ListGridRecord с проблемой логического поля - PullRequest
1 голос
/ 05 января 2012

Я использую ListGrid API SmartGwt.и в моем списке находится логический тип поля (который отображается как CheckBox в пользовательском интерфейсе).Я хочу сделать его недоступным для редактирования при записи.

, чтобы прояснить мою ситуацию, отметьте, что это логическое поле http://www.smartclient.com/smartgwt/showcase/#grid_editing_modal. недоступно для редактирования и недоступно для события одного клика.но, как я делаю то же самое в моем проекте.эта вещь не происходит.как бы я это сделал?Заранее спасибо.

1 Ответ

1 голос
/ 06 января 2012

Если разрешено отображать true / false или что-то по вашему выбору вместо флажка в режиме без редактирования, вы можете использовать CellFormatter для определенного поля ListGrid.

    //"attributeName" is listgridfield's name
    listGrid.getField("attributeName").setCellFormatter(new CellFormatter() {

          @Override
          public String format(Object value, ListGridRecord record, int rowNum, int colNum) {
            if (value != null) {
              return String.valueOf(value);
            }
            return "false";
          }
        });

Если значение записи в поле listgridtrue, true будет отображаться в противном случае false. В режиме редактирования он снова будет отображаться как флажок

UPDATE

Свойство ListGridField, которое позволяет редактировать логическое поле безвходящий режим редактирования: canToggle .Так что попробуйте

listGridField.setCanToggle(false);
...