В GWT как мне обработать событие нажатия на вкладку? - PullRequest
2 голосов
/ 30 января 2012

В моем файле 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 Ответ

6 голосов
/ 30 января 2012

Обрабатывайте 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
  }
}
...