0

目前,我有一个带有几个选项卡的 TabLayoutPanel,每个选项卡内部都有一组面包屑。我希望能够在选项卡旁边(在 TabBar 本身内部)显示我的面包屑。我还没有看到有人这样做的任何例子,我开始相信我最终可能会自己重写他们的 TabLayoutPanel 类并在需要的地方实现它,但显然我宁愿不走那条路,除非别无选择.

有人对此有任何指导吗?

4

1 回答 1

1

刚遇到同样的问题。以下是大部分相关的代码片段。我在选择选项卡时添加了一个 Unicode 箭头,并在取消选择选项卡时将其删除。

    private final String htmlStr ="\u25bb";

        private String getTabTitle(String html){
        // Designed to work for this example input.
        //If you pass a different string you will need to do different matching.
        if(html.indexOf("\u25bb") < 0)
            return html;
        else
            return html.substring(html.indexOf("\u25bb")+1);
    }


    @Override
 public void onBeforeSelection(BeforeSelectionEvent<Integer> event) {
        if(!getSelectedIndex().equals(event.getItem())) {
            notifyCurrentTabOfClosing();
            selectedIndex = event.getItem();
            String tabtitle = getTabTitle(getTabBar().getTabHTML(selectedIndex));
            getTabBar().setTabHTML(selectedIndex, htmlStr+tabtitle);
            }
        }
    }

public void selectTab(Widget widget) {
        int widgetIndex = getWidgetIndex(widget);
        selectTab(widgetIndex);
        String tabtitle = getTabTitle(getTabBar().getTabHTML(widgetIndex));
        getTabBar().setTabHTML(widgetIndex, htmlStr+tabtitle);
    }
于 2011-07-11T16:10:41.210 回答