Как программно получить информацию о заголовках 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