Посмотрите на OverLib. Это javascript lib с открытым исходным кодом, чтобы показать расширенные всплывающие подсказки. Его можно легко интегрировать в GWT. Кроме того, у вас есть свобода создавать собственные HTML-всплывающие окна.
Вот фрагмент моего вспомогательного кода lib (overlib должен быть распакован в общую папку вашего проекта GWT). Атрибутов, полученные с getSimpleToolTip просто добавляется к вашим элементам GWT:
public static String getSimpleToolTip(String text, Integer width, Integer height)
{
String alt = "onmouseout=\"" + getOnMouseOutAttribute() + "\"";
alt = alt + " onmouseover=\"" + getOnMouseOverAttribute(text, width, height) + "\"";
return alt;
}
public static String getOnMouseOutAttribute()
{
return "return nd();";
}
public static String getOnMouseOverAttribute(String text, Integer width, Integer height)
{
String out = "return overlib('" + text + "'";
out = out + ", DELAY, 750";
if (width != null)
{
out = out + ", WIDTH, " + width.toString();
}
if (height != null)
{
out = out + ", HEIGHT, " + height.toString();
}
out = out + ");";
return out;
}
Ну, кажется, что это не так просто: хвост должен указывать шар до определенного виджета. Если я использую фиксированное фоновое изображение, это не всегда так, поскольку PopupPanel.showRelativeTo() динамически позиционирует панель: «В зависимости от ширины и высоты всплывающего окна и расстояния от цели до нижнего и правого краев окна, всплывающее окно может отображаться непосредственно над объектом, и/или его правый край может быть выровнен с правым краем цели ». (Источник: http://google-web-toolkit.googlecode.com/svn/javadoc/2.0/com/google/gwt/user/client/ui/PopupPanel.html) – Bob
Ну, это сводится к использованию таблицы 3x3 с набором из 8 фоновых изображений. Затем вы накладываете в нужную позицию изображение рамки с изображением стрелки ...... просто, но довольно много работы. – user1050755