2011-05-16 1 views
3

У меня есть таблица ячеек, которая имеет несколько столбцов, чьи данные могут иногда быть шире их ширины.Как установить заголовок на виджет ячейки GWT?

У меня есть переполнение текста css, установленное на многоточие, поэтому для пользователя очевидно, что значение ячейки больше, чем ширина столбца.

С помощью «обычного» виджета я бы просто использовал setTitle() для автоматического отображения полного содержимого на мыши, но TextCell (и все другие виджеты ячеек) не распространяют UiObject, поэтому у них нет этого метода доступный.

TextCell реализуется div в теге td. Возможность задать заголовок на обоих элементах даст мне поведение, которое я ищу, но я не могу найти способ получить дескриптор на любом из элементов.

Каков наилучший способ заставить поведение заголовка HTML работать в виджет таблицы соты?

Спасибо,

Doug

ответ

3

вы можете написать свою собственную реализацию клеток и установить заголовок в шаблоне HTML самостоятельно.

Посмотрите на реализацию ячейки. В основном они предоставляют строку html для рендеринга.

+0

Я создал виджет, который расширяет TextCell и переопределяет метод визуализации, чтобы добавить тег div обертывания, название которого я мог бы установить. Не уверен, что это самое элегантное решение ... – Doug

+0

'Код' общественного класса TitledTextCell расширяет TextCell { \t общественного TitledTextCell() { \t \t супер(); \t} \t @Override \t общественного недействительными Render (Context контекст, \t \t \t значение SafeHtml, SafeHtmlBuilder С.Б.) { \t если (значение! = NULL) { \t \t // создать еще один DIV так, что мы может установить его название \t \t sb.appendHtmlConstant ("

"); \t sb.append(value); \t \t sb.appendHtmlConstant("
"); \t} \t} } – Doug

+0

не самый элегантный, но все в порядке. Вы можете заглянуть внутрь TextCell и изменить шаблон, чтобы включить свой заголовок напрямую (вы бы сохранили один div) –

0

Некоторые из этих проблем были «исправлены» в GWT 2.3. Но если вы застряли с использованием GWT 2.2, то писать свою собственную реализацию ячейки - это путь.

+0

Я использую 2.3, я просто n00b здесь, поэтому не смог создать свой собственный тег для 2.3 – Doug

+1

без заголовка в ячейке таблицы 2.3 (например, com.google.gwt.cell.client.AbstractCell ) – yetanothercoder