Я использую декларативный метод / ui-binder для добавления изображений на страницу. это в сочетании с использованием функций ImageBundle
, которые предоставляет GWT.
что я хотел бы сделать, это изменить изображение при наведении курсора на изображение. мои вопросы: каков наилучший способ сделать это, и является ли мой текущий метод лучшим методом в первую очередь?
мой код выглядит примерно так:
<ui:with field='res' type='path.to.my.app.AppResources' />
...
<g:HorizontalPanel ui:field='horizPanel' >
<g:Image ui:field='image1' resource='{res.image1}'/>
</g:HorizontalPanel>
, который затем связывается с классом ImageBundle
через AbstractImagePrototype
.
тогда в моем главном обработчике у меня что-то вроде:
@UiHandler("image1")
public void onMouseOver(MouseOverEvent event)
{
/* What do I do here? */
}
скажем, я хочу заменить изображение1 на изображение2, когда пользователь наводит курсор на изображение1 (и вернуть изображение1, когда указатель покидает изображение). заменить объект image1? использовать функцию setUrl для этого изображения? создать новое изображение и использовать функции добавления / удаления для горизонтальной панели, чтобы добавить его? это кажется ужасно неэффективным. мне даже не нужен ImageBundle
; Могу ли я добавить изображения через что-то вроде <g:Image .... url='path/to/image1.png' />
, а затем использовать CSS и атрибут hover для замены изображения?
было бы замечательно какое-то руководство. документация GWT серьезно отсутствует в этой области. спасибо.