GWT TabLayoutPanel始终处于折叠状态

时间:2010-08-31 19:42:44

标签: gwt uibinder gwt-tablayoutpanel

我有一个用UIBinder制作的普通TabLayoutPanel。选项卡呈现但没有内容。它在HTML中,但它总是折叠(元素上设置的内联样式使其崩溃)。据我所知,这与我见过的每个TabLayoutPanel示例相同。其他小部件渲染得很好。该项目只是默认HTML和代码被剥离的基本示例。

XML是:

<!DOCTYPE ui:UiBinder SYSTEM "http://dl.google.com/gwt/DTD/xhtml.ent">
<ui:UiBinder xmlns:ui="urn:ui:com.google.gwt.uibinder"
 xmlns:g="urn:import:com.google.gwt.user.client.ui">
 <g:TabLayoutPanel barHeight='22' barUnit='PX'>
  <g:tab>
   <g:header>Tab A</g:header>
   <g:HTML>
   asdf
   <p>asdfasdf</p>
   </g:HTML>
  </g:tab>
  <g:tab>
   <g:header>Tab B</g:header>
   <g:Label>blah</g:Label>
  </g:tab>
  <g:tab>
   <g:header>Tab C</g:header>
   <g:Label>blah</g:Label>
  </g:tab>
 </g:TabLayoutPanel>
</ui:UiBinder>

Java是:

public class Main extends Composite {

 private static MainUiBinder uiBinder = GWT.create(MainUiBinder.class);

 interface MainUiBinder extends UiBinder<Widget, Main> {
 }

 public Main() {
  initWidget(uiBinder.createAndBindUi(this));
 }
}

我正在将它添加到我的应用中:

public void onModuleLoad() {
  RootPanel.get().add(new Main());
 }

我很惊讶。这应该很简单。我一定是想念一些愚蠢的事。有什么想法吗?

1 个答案:

答案 0 :(得分:6)

将其添加到RootLayoutPanel。

public void onModuleLoad() {
  RootLayoutPanel.get().add(new Main());
}

不要忘记在你的HTML中使用正确的DOCTYPE。

<!DOCTYPE html>