如何杀死选项卡面板中的选项卡

时间:2009-10-27 18:25:58

标签: gwt

我创建了一个标签面板,可以在单击按钮时添加其他标签。

我无法弄清楚如何删除不是最后添加的标签。

这就是我的所在......

TabPanel tp = new TabPanel(); Horizo​​ntalPanel tabPanel = new Horizo​​ntalPanel(); 标签textLabel = new Label(“Some Filename”); 按钮killButton = new Button(“x”);

tabPanel.add(为textLabel); tabPanel.add(killButton);

tp.add(新HTML(“部分内容”),tabPanel); //正文和标题

killButton.addClickHandler(new ClickHandler(){ public void onClick(ClickEvent事件){

  //Decide the Tab index that contains this button
  //Remove this tab based on index

} }); // addClickHandler方法结束

当我尝试使用getWidgetIndex()方法返回特定选项卡的索引时,我每次都得到-1。

如何正确返回标签索引?

请帮忙,因为我疯了!!!

: - (

2 个答案:

答案 0 :(得分:3)

要删除选项卡,您需要引用添加的窗口小部件作为选项卡的内容,或者需要删除选项卡的选项卡索引。以上示例的一部分就像

final TabPanel tp = new TabPanel();
final HTML someContent1 = new HTML("Page A");
...
public void onClick(ClickEvent event){
  tp.remove(someContent1);
  // or just remove the tab it self
  //tp.getTabBar().removeTab(0);
}

NingZhang.info

答案 1 :(得分:0)

getWidgetIndex需要内容小部件而不是tab小部件作为参数。例如,在您的情况下,这将是使用new HTML("Some Content")创建的小部件。