В GWT как мне обработать событие нажатия на вкладку?

У меня есть панель макета вкладки в моем ui.xml:

<g:TabLayoutPanel ui:field="tabPanel" barHeight='30'>
  <g:tab>
    <g:header size='7'>tab1</g:header>
    <g:SimplePanel ui:field="tab1" height="100%"/>
  </g:tab>
  <g:tab>
    <g:header size='7'>tab2</g:header>
    <g:SimplePanel ui:field="tab2" height="100%"/>
  </g:tab>
</g:TabLayoutPanel>

Как мне обработать событие, генерируемое при нажатии Tab2?

1 ответ

Обрабатывать SelectionEvent<Integer> или же BeforeSelectionEvent<Integer> в зависимости от ваших требований.

например:

tabPanel.addSelectionHandler(new SelectionHandler<Integer>() {
  @Override
  public void onSelection(SelectionEvent<Integer> event) {
    if (event.getSelectedItem() == 1) {
      // Code
    }
  }
});

или же:

@UiHandler("tabPanel")
void onTabSelection(SelectionEvent<Integer> event) {
  if (event.getSelectedItem() == 1) {
    // Code
  }
}
Другие вопросы по тегам