Я ничего не вижу в документации, кроме ссылки на то, чтобы включить некоторый «CssResource» и получить его с помощью ClientBundle, но как мне точно переопределить tbody и th CellTable?
Это возможно?
Я ничего не вижу в документации, кроме ссылки на то, чтобы включить некоторый «CssResource» и получить его с помощью ClientBundle, но как мне точно переопределить tbody и th CellTable?
Это возможно?
Создайте интерфейс:
interface TableResources extends CellTable.Resources {
@Source({CellTable.Style.DEFAULT_CSS, "<your css file>.css"})
TableStyle cellTableStyle();
}
interface TableStyle extends CellTable.Style {
}
и инициализируем таблицу ячеек:
CellTable.Resources resources = GWT.create(TableResources.class);
table = new CellTable<SomeProxy>(rowSize, resources);
В пакете cellview.client вы можете найти файлы gwt css по умолчанию. Используйте их в качестве отправной точки. В "<your css file>.css"
внесите определенные изменения стиля.
Вы также можете установить стиль столбца (для элемента col):
table.addColumnStyleName(colNumer, "some_css_style_name");
или лучше использовать имя ресурса css вместо строки «some_css_style_name».
@UiField(provided = true)
с CellTable. Таким образом, UiBinder узнает, что вы создаете таблицу в коде.
- person Hilbrand Bouwkamp; 24.11.2010
Просто для удовольствия я мог бы добавить что-то, с чем у меня только что была головная боль... если вы измените cellTableStyle(); с чем-то еще он ломается... никаких предупреждений или ошибок, CSS просто не появляется, как я думал. Не знаю, где это задокументировано, но я обнаружил это после долгих попыток выяснить, почему некоторые CSS были правильными, а некоторые нет.
По какой-то причине мой cellTable.addColumnStyleName(colNumber, "cssStyle") просто не будет работать. Согласно FireBug, он не добавляет стиль, несмотря ни на что (если бы стиль был неправильным, он, по крайней мере, мог бы добавить его в атрибут классов th-элемента...). Может быть, это потому, что я перерисовываю столбцы, но все же это странно.
Я использовал решение выше, однако, если у вас есть другая таблица со стилем по умолчанию, в конечном итоге она будет создана с вашей пользовательской таблицей. Вы должны переопределить все свои таблицы с помощью собственного стиля или есть какой-то обходной путь?
Кроме того, я нахожу конструкторы CellTable менее чем оптимальными... Мне нужно указать pageSize, чтобы указать ресурс стиля CellTable(pageSize, resources)... Я ставил Integer.MAX_VALUE для pageSize, не уверен, что это должно быть - 1 или что-то еще, так как для этого значения нет javadoc.