Как программно получить информацию о заголовках CellTable?

Я использую GWT 2.4. У меня есть виджет com.google.gwt.user.cellview.client.CellTable, но мне не удается найти программный способ получения заголовков String после создания виджета. Я добавляю данные столбца так...

tableWidget.addColumn(column, header); 

где column - это объект com.google.gwt.user.cellview.client.Column, а header - строка. Как я могу получить заголовок из объектов столбца или таблицы ячеек?

3 ответа

Решение

Для использования защищенного метода вы можете создать собственный класс, например так:

public class CustomCellTable extends CellTable {

    /* some code... */

    /* Method for access to header */
    public TableSectionElement getHeadElement() {
          return this.getTableHeadElement();
    }

    /* some code... */

}

Попробуйте использовать метод getTableHeadElement() com.google.gwt.user.cellview.client.CellTable. Смотрите документацию.

Если вы хотите иметь больше контроля над своим заголовком, возможно, вы можете использовать следующий метод при добавлении столбца в таблицу. Таким образом, вы можете держать указатель на заголовке, чтобы делать с ним что угодно.

public void addColumn(Column<T, ?> col, Header<?> header)

Затем создайте свой собственный заголовок или, например, используйте TextHeader.

TextHeader textHeader = new TextHeader("headerTitle");
myTable.addColumn(myColumn, textHeader);

Но если цель состоит в том, чтобы проверить, что виджет создается должным образом, я думаю, что ответственность за это лежит на GWT. Я не вижу смысла в тестировании поведения GWT. Это уже сделано GWT. Конечно, могут быть некоторые ошибки, которые вы можете найти.

см. также другой пост здесь, если вы хотите проверить или переопределить некоторый стиль CSS: /questions/29772615/posmotrite-stil-zagolovkov-gwt-celltable/29772626#29772626

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