我需要有一个包含MenuBar和TabLayoutPanel的窗口。这看起来很简单,但我没有发现任何有用的东西。
最简单的解决方案是
RootLayoutPanel root = RootLayoutPanel.get();
DockLayoutPanel pan = new DockLayoutPanel(Unit.EM); MenuBar bar = new MenuBar();
...
pan.addNorth(巴,2.0);
TabLayoutPanel tabs = new TabLayoutPanel(1.0,Unit.EM);
tabs.add(someWidget,“Tab title”);
...
pan.add(标签);
root.add(PAN);
但是,这会导致菜单栏部分遮盖标签。将TabLayoutPanel放在南部地区也存在同样的问题。
另一种方法是将MenuBar和TabLayoutPanel放在LayoutPanel中,例如。
RootLayoutPanel root = RootLayoutPanel.get();
LayoutPanel pan = new LayoutPanel();
...
pan.setWidgetTopHeight(菜单栏,0.0,Style.EM,2.0,Style.EM);
pan.setWidgetLeftWidth(菜单栏,0.0,样式,EM,100.0,Style.PCT);
pan.setWidgetTopHeight(制表符,8,Style.EM,30,Style.EM);
pan.setWidgetLeftWidth(制表符,0,样式,EM,100.0,Style.PCT);
在这种情况下,MenuBar会正确显示,但TabLayoutPanel根本不会显示。我已经尝试了各种方法和参数将TabLayoutPanel放在LayoutPanel中,但它永远不会显示,除了
pan.add(标签);
但当然这并不好,因为TabLayoutPanel和MenuBar重叠。
我很欣赏有关如何使其发挥作用的任何想法。应该有办法,但我还没找到。
感谢