Icefaces RowSelector двойной щелчок - PullRequest
0 голосов
/ 25 января 2012

У меня небольшая проблема с обработкой двойного щелчка с помощью icefaces.

Кажется, есть два способа сделать это.

SelectionListener => вы знаете, если это двойной щелчок или нет с запущенным ClickActionEvent, но вы не можете перемещаться (откройте новую страницу «Подробности» в строке двойным щелчком мыши)

ClickAction => навигация. ОК, откуда вы знаете, является ли это щелчком мыши или нет?

Каков наилучший способ сделать то, чего я хочу достичь? Скажем, у меня есть список людей, двойной щелчок по человеку должен открыть страницу с информацией об этом человеке.

1 Ответ

0 голосов
/ 01 февраля 2012

Вы можете использовать тег rowSelector, который имеет атрибут clickListener.

При щелчке по строке вызывается ClickActionEvent, и вы можете определить в компоненте поддержки, если он дважды щелкнулся или нет, по ClickActionEvent.isDblClick().

Для навигации в событии поддержки бина

FacesContext context = PersistentFacesState.getInstance().getFacesContext();
NavigationHandler handler = context.getApplication().getNavigationHandler();
handler.handleNavigation(context, fromAction, outcome);

Можно также попробовать

FacesContext.getCurrentInstance().getExternalContext().redirect(url);
...